1

我已经读过默认情况下在 SharePoint 中禁用了 Session(我听说过由于性能)。我的情况似乎适合会话,但如果我能提供帮助,我不想启用会话,我更愿意查看替代方案,但我正在努力找出它们是什么。我可以找到很多讨论如何启用它的问题,但在替代品上找不到太多。

我的情况是我希望有一个组合框出现在我的解决方案中的大多数页面上。这个组合框将在几乎每个页面上稍微修改数据绑定(通过修改变量),我希望它在整个站点上为用户保持一致。几乎就像“您希望页面使用什么语言?” 或“您希望数据用于哪一年?”。显然,这些信息应该在每个用户的基础上持久化,特别是当用户注销时它是否丢失并不重要。

除了使用会话之外,我还有什么选择?

4

2 回答 2

1

您是否尝试过使用 cookie 来存储客户端的信息?沿着这些思路

这可能有效,但也可能会引入更多复杂性,具体取决于下拉菜单在页面生命周期中的呈现位置。

这也可能是一个安全问题,但对于简单的过滤数据,这不应该是一个问题。

于 2012-10-29T11:04:30.760 回答
1

我不确定 Session 是否因性能而被禁用,因为它可能因多个 Web 前端而被禁用。如果您的 Web 应用程序位于只有一个前端的场中,您可能需要尝试启用 Session。您实际上可能会看到性能提升,因为突然之间,SharePoint 将存储在内容数据库中的状态不再是往返,而是现在在 Web 服务器上可用。至少,这是我的经验。我注意到在接收中等音量的单个前端场上启用 Session 会略微提高性能。

也就是说,如果 Session 肯定退出,我可能会选择 cookie,就像@agrothe 建议的那样。如果 cookie 没有了,并且它是一个单一的前端农场,我可能会尝试网站 Property Bag。但正如这里所指出的,Property Bag 并不是真正意义上的 Session 替代品,因此您需要确保使用唯一键并在完成后删除键值对。

于 2012-10-29T17:53:31.090 回答