asp.net - asp.net 用户登录信息存放在什么地方

标签 asp.net session membership

当我构建需要用户登录的 asp.net 应用程序时,我在我的业务类中编写了一个方法,如果用户已登录则返回一个 Member 对象实例,否则返回 null。然后我这样做:

Session["User"] = user;

然后在每个页面加载中我必须实现这个:

User user = Session["User"] as User;
if(null==user){
 //toggle the state of ascx, to show username/password boxes again,
 //Response.Redirect("somewhere else") etc...
}

这看起来很有效,但这是一个好方法吗? 因为有时 Session 不再返回该对象。它发生在 20 分钟之前,这是 session 的默认超时。这有什么原因吗?当我在测试期间进行多次回发时,它是随机发生的。

提前致谢。

最佳答案

您不能使用 Viewstate - 它的范围是当前页面。 为什么不使用表单例份验证?它为您完成所有这一切,甚至更多,包括在数据库中保留用户帐户。

关于asp.net - asp.net 用户登录信息存放在什么地方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1812638/

相关文章:

asp.net - 2010 年在 ASP.NET 中进行客户端/服务器验证的最佳方法是什么?

asp.net - Page_Load(object sender, EventArgs e) 和 $(document).ready(function () 之间哪个先运行?

image - GAE webapp2_extras session 内存限制(在 session 中存储临时图像)

AngularJS 和 Laravel - CORS

c# - System.Web.Security 的替代方案,使用相同的数据库

c# - 类型 'Microsoft.AspNetCore.Identity.UserManager' : while trying to extend IdentityUser? 无服务

asp.net - 在不同子域的不同应用程序上共享 asp.net 身份验证

javascript - 如何在浏览器关闭或选项卡关闭时销毁 Vaadin 8 session ?

asp.net - 扩展成员(member) API、MembershipUser

asp.net-mvc-4 - 我究竟如何在 Asp.NET MVC 4 中使用角色?