C# 识别已登录用户的最佳方法是什么?
在使用C# 识别已登录用户的最佳方法是什么?,c#,asp.net,C#,Asp.net,在使用asp.net登录控件时,我一直在寻找跟踪已登录用户的有效方法 if (!IsPostBack) { if (Membership.GetUser() != null) { var user = Membership.GetUser(); Session["user"] = user; } else
asp.net
登录控件时,我一直在寻找跟踪已登录用户的有效方法
if (!IsPostBack)
{
if (Membership.GetUser() != null)
{
var user = Membership.GetUser();
Session["user"] = user;
}
else
{
Session["user"] = "";
}
}
如果您有任何建议,我们将不胜感激。您可以通过以下方式获得用户身份(如果您使用asp.net表单成员身份):
您可以通过以下方式获得用户标识(如果您使用的是asp.net表单成员身份):
为什么会有这样的痛苦,为什么要尝试将其保存在会话中(这是用户特定的,而不是应用程序特定的),而您只需从该对象获取它:
HttpContext.Current.User
查看此项了解详细信息:当您可以简单地从该对象获取它时,为什么要将所有这些痛苦以及为什么要尝试将其保存在会话(特定于用户而非特定于应用程序)中:
HttpContext.Current.User
查看此项了解详细信息:您只需使用
User.Identity.Name
您只需使用
User.Identity.Name
登录时,如果用户有效,请使用:
FormsAuthentication.SetAuthCookie(login.UserName, false);
而不是依赖会话来存储用户登录状态
然后,您可以检查用户是否通过以下方式登录:
User.Identity.IsAuthenticated
并让他们的用户名执行以下操作:
User.Identity.Name
登录时,如果用户有效,请使用:
FormsAuthentication.SetAuthCookie(login.UserName, false);
而不是依赖会话来存储用户登录状态
然后,您可以检查用户是否通过以下方式登录:
User.Identity.IsAuthenticated
并让他们的用户名执行以下操作:
User.Identity.Name
您可以使用User.Identity.Name
请查看您可以使用User.Identity.Name
请看一看