为什么 Asp.Net 中的 Session 对象在超时后没有被删除?

2024-03-29

为什么超时后Session对象没有被删除?

我使用的是 Asp.Net 4.0,会话状态配置如下。

<sessionState mode="SQLServer" cookieless="false" timeout="5"
                  allowCustomSqlDatabase="true" 
                  sqlConnectionString="data source=.\SqlExpress;initial catalog=App_SessionState;user id=sa;password=xxxxxxxx"/>

如果我在浏览器中大约 10 分钟没有活动,是否应该删除 Session 对象。但 10 分钟后我仍然可以访问 Session 变量。我在这里错过了什么吗?

EDIT:

如果我在 10 分钟后访问会话变量(如下所示),我不应该得到NULL

  var myObj = Session["MyKey"] as MyClass;

10 分钟后 mObj 不为 NULL。


安装了一个名为的存储过程DeleteExpiredSessions,从工作中调用ASPState_Job_DeleteExpiredSessions,并且每分钟执行一次(如果我正确读取InstallSqlState.sql文件)。

该过程基本上调用DELETE FROM ASPStateTempSessions WHERE Expires < GETUTCDATE()

因此,如果对象未删除,请检查“过期”列,并验证您是否正在与utc日期。如有疑问,请执行以下操作:SELECT * FROM ASPStateTempSessions WHERE Expires < GETUTCDATE()。另外,请确保您的ASPState_Job_DeleteExpiresSessions已启用并正在工作。

一个快速的(并且完全未经证实的想法); SQL Server Express 是否附带 SQL 代理?它是否已启用并能够执行计划的作业?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 Asp.Net 中的 Session 对象在超时后没有被删除? 的相关文章

  • 如何缓存 ASP.NET 网站以获得更好的性能

    我是一名网页设计师 通常设计不需要更新的企业网站 所以我想将输出缓存一天 我怎样才能做到这一点 此外 任何有关在慢速服务器上提高 ASP NET 性能的建议都被接受 请注意 ASP NET 缓存有一个bug http connect mic
  • 从 MVC 视图中的模型访问 displayName 属性

    如果我的模型有 DisplayName First Name public string firstName get set 然后我可以用 LabelFor 在视图中打印它 Html LabelFor model gt model acc
  • 用数字填充 asp.net 下拉列表

    一个简单的查询 我想用从 17 到 90 开始的数字填充下拉列表 最后一个数字应该是像 90 而不是 90 这样的字符串 我猜逻辑将使用 for 循环 如下所示 for int a 17 a lt 90 a ddlAge Items Add
  • Environment.WorkingSet 错误地报告内存使用情况

    Environment WorkingSet 错误地报告在 Windows 2003 Server 上运行的网站的内存使用情况 操作系统版本 Microsoft Windows NT 5 2 3790 Service Pack 2 NET
  • 服务器端的 ASP.NET 等效项包括

    虽然服务器端包含的经典 ASP 方法在 ASP NET 中有效 但我的印象是它不是首选方法 我 应该 如何达到同样的效果 这就是我现在正在做的事情 您现在有许多选项可以提供这种效果 但方式不同 用户控件 ascx 母版页 master 服务
  • C# NetworkStream.Read 奇怪之处

    谁能指出这段代码中的缺陷吗 我正在使用 TcpClient 检索一些 HTML 与 IIS 服务器通信时 NetworkStream Read 似乎永远不会完成 如果我改用 Fiddler 代理 它可以正常工作 但是当直接与目标服务器对话时
  • 果园:自定义注册字段

    对于我的 Orchard 项目 我需要用户在注册时提供一些附加信息 说 名字 姓氏 裤子颜色 此信息必须在注册时输入 并且不能推迟到以后 根据客户的订单 我尝试使用配置文件和扩展注册插件来请求这些 但据我所知 这只为我提供了在注册表中显示的
  • 在 ApiController 操作中获取当前用户,而不将 userID 作为参数传递

    我们如何在安全的 ApiController 操作中获取当前用户 而不将 userName 或 userId 作为参数传递 我们假设这是可用的 因为我们处于安全操作范围内 处于安全操作意味着用户已经通过身份验证并且请求具有她的不记名令牌 鉴
  • 如果是持久(保持活动)连接,为什么我会在 Web 请求中到达 endOfStream?

    我有一个网络请求 它创建与服务器的持久 保持活动 连接 例如 webRequest ContentType application x www form urlencoded Set the ContentLength property o
  • 在 WCF 上重用我的 PagedList 对象

    问题 我有一个自定义集合PagedList
  • 需要用户使用 NTLM 重新进行身份验证

    我是 NTLM web config 中的authenication windows 有一个 asp net mvc 2 0 站点 现在 一旦用户登录 他们就会一次保持登录状态数周 该应用程序的使用正在向共享使用登录服务帐户的计算机的用户开
  • PHP if in_array 表示多个值

    我有一个由 3 到 12 个值之间的任意位置生成的数组 它根据帐户信息生成该数组 result ad gt user gt groups user username 我想检查这个数组是否有多个值 大约 4 或 5 个 如果其中有任何一个值
  • AJAX控制工具包加载所有脚本

    我有一个奇怪的问题 我似乎无法解决 我正在使用 AJAX 控制工具包日历延长器在我的一些页面上 尽管我通过网络找到了信息 但我似乎无法让它与常规程序一起工作ScriptManager控制 它only与一个ToolkitScriptManag
  • 如何在任何给定时刻找到我的网站 (IIS 7/asp.net) 的访问者/用户数量?

    我需要显示有多少用户正在浏览我的网站 该网站运行在iis7上 我们使用的是asp net 3 5 活跃会话的数量是一个好的方法吗 该数字不需要非常准确 不需要历史记录 我只想知道现在有多少用户 在线 并将其显示在页面本身上 您可以为此使用
  • System.diagnostics.process 进程在托管后无法在 IIS 上运行?

    我正在尝试从网络应用程序安装 exe 当我在本地运行应用程序 从 asp 开发服务器 时 它安装正确 但当我托管在 IIS 上时 它不起作用 我在asp net页面的Page load方法上编写了这段代码 想要在客户端计算机上安装Test
  • 禁用 ASPNET 身份 2.0 中的用户

    我正在寻找一种方法来禁用用户而不是从系统中删除它们 这是为了保持相关数据的数据完整性 但似乎 ASPNET 身份只提供删除帐户 有一个新的锁定功能 但似乎可以控制锁定以禁用用户 但只有在尝试了一定次数的错误密码后才将用户锁定 还有其他选择吗
  • 如何强制 BundleCollection 刷新 MVC4 中缓存的脚本包

    or 我如何学会停止担忧 只针对 Microsoft 完全未记录的 API 编写代码 有没有官方的实际文档System Web Optimization发布 因为我确实找不到任何内容 没有 XML 文档 而且所有博客文章都引用了 RC AP
  • ModelBinding asp.net MVC 列表

    我有以下课程 public class Movie string Name get set string Director get set IList
  • 在 ASP.NET Core 中,有没有办法从 Program.cs 设置中间件?

    我正在为 ASP NET Core 网站构建一个支持库 我有一些需要启用的中间件 并且由于它们的作用 需要在任何其他中间件之前添加它们 我可以在 IWebHostBuilder 上创建一个扩展方法来添加服务 同样用于配置日志记录 但我没有看
  • __doPostBack 方法如何被调用?调用方法在哪里?

    我用了一个

随机推荐

  • 1.9.1 的 ruby​​ ping

    我想在我的 ruby 代码中 ping 一个站点 发现 net ping 是一个很好的库 不幸的是 当我尝试 gem install net ping 时 出现以下错误 C gt gem 安装 net ping错误 安装 net ping
  • MVVM 符合 WPF 应用程序中的本地化

    如何使用 MVVM 模式本地化 WPF 应用程序 我真的很想以 正确 的方式去做 我当前的方法是使用 resx 资源文件来本地化我的应用程序 我将它们包含在我的 xaml 代码中 xmlns localization clr namespa
  • asp.net 网站中的 Quartz.net 设置

    我刚刚将quartz net dll 添加到我的bin 中并启动了我的示例 如何使用基于时间的quartz net 调用C 方法 using System using System Collections Generic using Sys
  • 开始后取消/停止 jquery fadeOut

    我有一个非常简单的页面 当用户单击页面上的特定条目时 该页面会显示状态更新 这一切工作正常 第一次点击更新id sts 如果输出正确 6 秒后这种现象就会消失 然而 虽然它会淡出 但如果用户单击另一个链接 DIV 会使用新文本进行更新 但它
  • Symfony2 动态/依赖形式

    我有一个包含 3 个依赖字段的表单 制造商 gt 制造商产品组 gt 制造商产品系列 所以我想选择一个制造商 基于制造商的产品组和基于产品组的产品系列 有一个 CookBook Entry 关于如何处理此类动态表单 它很容易为Manufac
  • 手动滚动到锚点时更改 url?

    默认情况下 如果我的网站中有锚点 则当我单击链接 即 www mysite com anchor 时 地址栏上的 URL 会发生更改 当我滚动到某个锚点时 是否可以立即更改地址栏中的 URL 或者有一个包含多个锚点的长文档 当我点击新的锚点
  • 分裂蜂群图

    如何按组分割蜂群图 类似于 使用 ggplot2 分割小提琴图 https stackoverflow com questions 35717353 split violin plot with ggplot2 但我想得到的不是密度图 而是
  • 全屏模式下的 ChromeDriver

    我正在尝试将 F11 发送到 ChromeDriver 但它没有响应 当我按 F11 时 Chrome 就会进入全屏模式 当我通过 ChromeDriver 发送 F11 时 却没有 这对于 ChromeDriver 中的任何 F 键都是相
  • 字典 <> 中的条目有限制吗?

    我有大约 3000 个不同的文件需要在游戏过程中的不同时间进行组织和检索 我创建了自己的变量结构 我正在考虑创建一本 词典 在我的应用程序开始时 只需在游戏开始之前加载我的所有文件 我想知道性能 包含这么多条目的字典会导致我的应用程序变慢吗
  • 使用反射从 Visual Studio(32 位)中的 T4 模板中分析 64 位 DLL

    我想使用反射从 T4 模板中分析 DLL 以便我可以根据反射分析的结果生成代码 我知道 EnvDTE 将是一个更好的选择 但由于多种原因 这在我的情况下是不可能的 反射的问题是 DLL 是 64 位 DLL 如果我在 T4 模板中加载它 我
  • 新进程完成后保持控制台窗口打开

    我目前有一部分代码可以创建一个新进程并从 shell 执行它 Process p new Process p Start p WaitForExit 这使得窗口在进程运行时保持打开状态 这很棒 不过 我也想把窗户打开after完成查看潜在消
  • 如何编写一个 C 程序来执行另一个程序?

    在linux中 我想编写一个启动另一个程序的C程序 当程序运行时 shell 将等待您输入您在程序中定义的命令 该命令将启动第二个程序 例如 假设在与调用程序相同的目录中有一个名为 hello 的简单 C 程序 hello 程序打印输出 h
  • 为什么使用 libnfc 和 PN532 SHIELD 时“找不到 NFC 设备”

    我在 ArchLinux 上安装了 libnfc 并通过我的 Adafruit PN532 arduino SHIELD 使用它 nfc list返回消息 未找到 NFC 设备 我在 etc nfc devices d pn532 conf
  • 连接到上游时没有实时上游,但上游正常

    我对 NGINX 有一个非常奇怪的问题 我有以下内容upstream conf文件 具有以下上游 upstream files 1 least conn check interval 5000 rise 3 fall 3 timeout 1
  • 即使启用了假脱机文件池,如何找到具有给定 ID 的作业的假脱机文件?

    我想将给定 Windows 打印作业的假脱机数据复制到磁盘上的任意位置 我有打印作业的作业 ID后台打印程序 API http msdn microsoft com en us library windows desktop dd16286
  • table_exists() 方法可能无法正常工作

    我开始使用 codeigniter 2 1 0 编写一个简单的模型类 我现在想要它做的就是创建和删除它所代表的 MySQL 表 这是代码
  • 在 C++ 中从 HKEY 句柄确定注册表项的路径

    给定 Windows 注册表项的句柄 例如由 RegOpenKeyEx 设置的句柄 是否可以确定该注册表项的完整路径 我意识到在一个简单的应用程序中 您所要做的就是查找 5 或 10 行并阅读 但是在像我正在调试的复杂应用程序中 我感兴趣的
  • 想要绘制分组数据的平均值并添加置信限

    我需要计算和绘制平均值和 95 置信限的数据 但我不知道我的代码哪里出了问题 数据按年份分组 我考虑使用 stat smooth 来绘制置信区间区域 但我无法将其付诸实践 如果我尝试 我会收到错误 错误 geom path 如果您使用点线或
  • 请求 DocuSign API 签名时不发送电子邮件

    我编写了以下两种发送签名请求的方法 来自模板 https github com wadewegner docusign sample blob master src DocuSign DocuSignClient cs L215 https
  • 为什么 Asp.Net 中的 Session 对象在超时后没有被删除?

    为什么超时后Session对象没有被删除 我使用的是 Asp Net 4 0 会话状态配置如下