asp.net-mvc - Asp MVC,构建解决方案时 session 是否丢失?

标签 asp.net-mvc session

我正在用 ASP.NET MVC 编写一个应用程序。基本上我有一些需要用户身份验证的页面。用户登录后,我将用户行保留在 session 中。因此,在我的 Controller 中,我可以访问 user.ID,而无需进行额外的查询。

当项目处于 Debug模式时,我只能更改 View 中的内容。不在 Controller 中。

如果我不进行调试,我可以构建解决方案,并查看我所做的更改,而无需运行项目(使用 F5)。 但是,它丢失了我拥有的所有 session 变量。

所以基本上对于 Controller 中的每一个无论多么小的更改,我都必须注销,登录才能查看我的更改。

这些是正常行为吗?

最佳答案

正如 Dan 所说,这是正常行为。为了使它更容易(并且稍微更健壮),只需稍微更改您的代码。当然,这是假设您在 session 中存储的不仅仅是用户 ID,因为在经过身份验证后,您可以通过 Controller.User.Identity.Name 访问用户 ID。因此,您在 session 对象中执行附加数据的查找,如果它不返回 null,则使用它。如果确实返回null,则根据User ID再次查找附加信息,并再次存储到session中。这是我从 Active Directory 存储信息所采用的方法,效果很好。

关于asp.net-mvc - Asp MVC,构建解决方案时 session 是否丢失?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1708120/

相关文章:

html - 仅为登录用户验证视频

iOS HealthKit 在 session 期间跟踪用户步数

PHP session 不会过期。曾经

asp.net-mvc - 如何验证自定义属性?

javascript - 选项卡在 MVC 应用程序中不起作用

asp.net - Internet Explorer 嵌套表单发布

c# - HttpApplication 不退出

php - 在 SQL WHERE 语句中使用 session 变量

php - 更改 session ID 并保留数据?

javascript - 如何在浏览器窗口关闭时终止应用程序 session ?