问题标签 [session-state]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
821 浏览

asp.net - Set Path dynamically in Forms Authentication

Here's the problem we facing.

In a hosted environment setup, we're hosting the same project multiple times. We currently manually specify a Path in the forms config section of our web.config. However, to smooth out our deployment process, we'd like to set the Path depending on the Virtual Directory name.

Is there a way for us to dynamically set the Path in the web.config?

0 投票
5 回答
24316 浏览

asp.net-mvc - 如何在 ASP.NET MVC 中禁用会话状态?

我想要一个非常轻量级的 ASP.NET MVC 站点,其中包括尽可能多地删除常用的 HttpModules 并禁用会话状态。但是,当我尝试执行此操作时,出现以下错误:

The SessionStateTempDataProvider requires SessionState to be enabled.

我在 web.config 中禁用了会话状态:

我了解 ASP.NET MVC 对 TempData 使用会话状态,但我不需要/想要 TempData - 我只想禁用会话状态。帮助!

0 投票
5 回答
2782 浏览

asp.net - 会话状态服务器冗余

我们目前有一个在单个服务器上运行的 ASP.NET Web 应用程序。该服务器即将达到 CPU 使用率的危险区域,我们想要部署第二台服务器。

处理会话状态的最佳方法是什么?

我们目前运行 InProc。但这不是 2 台以上服务器的选项,因为有时我们希望从 WLB 轮换中排除单个服务器以进行维护工作。即使我们使用粘性负载平衡,我们也必须等待所有用户退出,然后才能将服务器从 WLB 轮换中排除。

所以我在看这个 MSDN 页面: http: //msdn.microsoft.com/en-us/library/ms178586 (VS.80).aspx

我想我的主要问题是:如果我们使用状态服务器模式。我们可以通过在两台服务器上部署状态服务器来确保冗余吗?避免出现单点故障。

0 投票
5 回答
3231 浏览

asp.net - 在 asp.net 中使用会话

我希望我在 pageA 的文本框中输入的数据可以在 pageB 上访问

例如:用户在页面 A 的文本框中输入他们的姓名

B页说你好(他们在文本框中输入的信息)

我听说这可以通过使用会话来完成,但我不知道如何。

有人可以告诉我如何设置会话以及如何在其中存储数据吗?谢谢!

0 投票
5 回答
61261 浏览

asp.net - 导致“会话状态已创建会话 ID,但无法保存它,因为响应已被应用程序刷新”的原因。

我间歇性地遇到这个故障。

我发现这个链接很好地总结了我在谷歌上找到的内容: http ://www.wacdesigns.com/2009/02/03/session-state-has-created-a-session-id-but-无法保存它,因为响应已被应用程序刷新/

基本上它说您可以尝试设置 Web 配置设置 DisplayWhenNewSession,或者尝试通过获取 Session_OnStart 中的 Session.SessionID 来激活会话状态。

但是有没有人:

a) 对此有解释

甚至更好,b)有一个久经考验的修复

我意识到在执行任何会影响 http 响应标头的操作后,我无法刷新响应。如果我这样做,每次都会导致错误,但这是间歇性的。SessionID 肯定应该由 ASP.NET 在页面响应开始时自动创建,在 ASPX 页面或 Page_Load(我的所有刷新被调用的地方)中的任何内容之前。

更新: 经过反思,我意识到这是在将文件流式传输到浏览器时发生的。大多数浏览器实际上是搜索引擎机器人。我可以通过开始下载然后关闭浏览器来重新创建此错误,因此大概浏览器在取消下载操作之前没有等待下载完成。我也在其他正常页面上看到过这种情况,但 99% 的时间是下载页面。

0 投票
4 回答
23882 浏览

asp.net-mvc - ASP.NET MVC 会话 vs 全局 vs 缓存

我有一个用 vanilla ASP.NET 编写的应用程序,我想将它移植到 ASP.NET MVC。

然而,我对持久化对象的正确位置感到困惑。我需要坚持有几个原因:

  1. 我希望所有人都有一个单一的数据库连接,包装在“存储库”或“管理器”样式的对象中。
  2. 每个用户都有一个用户对象,需要在每个会话的基础上保存。

通常,我会说#1 将被保存为 Globals.asax 中的静态项目,可以使用Global.Repository或类似方法命中。

我通常会说#2 应该是在页面的基类中某处具有会话支持存储的属性。

现在我感到困惑的原因是我听说 MVC 中的会话发生了变化,并且 Global.asax 不再拥有相同的类。此外,页面的概念已被删除,因此向控制器的基类添加属性似乎......错误。

怎么说呢?

0 投票
3 回答
3894 浏览

asp.net - 只读访问 Web 服务调用中的会话?

我们有一个 .net asmx Web 服务,它从 javascript(使用 ASP.Net AJAX)调用,并且需要访问 Session。

我们遇到了会话被读/写请求锁定的问题。有什么方法可以将 Web 服务方法标记为需要对 Session 进行只读访问?

谢谢!

0 投票
1 回答
253 浏览

asp.net - Oracle ODP.NET 和双击超链接

我已经安装了 ODP.NET,并且正在通过 Oracle 为 ASP.NET 网站使用会话状态服务。我测试了它,我想,非常彻底,没有发现任何重大问题。一些用户在使用系统时一直抱怨异常错误。我添加了一些额外的日志记录,并找出了如何重现该问题。当用户双击超链接时会发生这种情况。我以前从未想过双击超链接,也不知道用户喜欢这样做,所以我没有测试过这种可能性。这会发送 2 个相同的请求以保存具有相同主键的会话项。我将 ODP.NET 11.1.0 用于 .NET 2.0 框架,并且被调用的函数已被 Oracle 混淆,所以我无法在那里修复它。有没有其他人有这个问题?除了告诉用户您不要双击超链接之外,有谁知道解决方案。

0 投票
1 回答
596 浏览

asp.net - 涉及会话状态的可扩展 Web 应用程序的最佳实践设计是什么

我问这个的原因是最近设计了一个应用程序,最初想不使用会话状态来保持简单,但最终屈服于使用会话状态来存储状态的想法。我知道迁移到网络场解决方案将涉及配置会话状态以在 sql 中运行。但是,我从未遇到任何解释序列化是必要的信息。所以不,我需要重构代码来实现这一点。

此外,我使用 linq to sql 给我数据对象。理想情况下,这很容易序列化,但似乎不是直截了当。

我用谷歌搜索过,这样做应该没问题。问题不是如何序列化 linq 数据类,而是:

会话状态是前进的方向吗,特别是在网络场上设计可扩展应用程序时,我们是否应该使用其他方法,在使用 linq 进行数据访问时推荐什么,我们是否应该使用查询字符串等。

谢谢

0 投票
1 回答
1656 浏览

session - 我可以从 NUnit 测试中访问 SessionState 吗?

我在 NUnit 测试中的一种方法检查 Session-State 变量:

如果(会话[变量名称] == null)...

并且 NUnit 测试因错误而失败:

System.Web.HttpException:会话状态只能在 enableSessionState 设置为 true 时使用,无论是在配置文件中还是在 Page 指令中。还请确保 System.Web.SessionStateModule 或自定义会话状态模块包含在应用程序配置的 \\ 部分中。

我尝试将测试方法从类库中取出,并将其放入在 aspx 页面指令中设置 EnableSessionState="True" 的 aspx 页面的代码隐藏 cs 中。在 web 配置中添加了一个带有 sessionState mode = "InProc" 的 web 配置,然后在 web.config 中尝试了 < pages enableSessionState ="true"/>。

Nunit 测试在会话状态操作上仍然失败。

我必须嘲笑这些吗?