@if (Request.IsAuthenticated)
{
@User.Identity.Name
@:<p style="color:red" >Welcome,@User.Identity.Name</p>
@Html.ActionLink("خروج", "Logout")
}
else{
@Html.ActionLink("ورود", "login")
<br />
@Html.ActionLink("ثبت نام", "GetUser")
}
Request.IsAuthenticated
是false
和
@User.Identity.Name is =""
但我获取了登录表的数据,然后登录回主页,但我没有获得显示User.Identity.Name
原因的数据?
请帮帮我。
答案 0 :(得分:1)
用于检查经过身份验证的用户使用User.Identity.IsAuthenticated
:
@{
if(User.Identity.IsAuthenticated)
{
@User.Identity.Name
<p style="color:red" >Welcome,@User.Identity.Name</p>
@Html.ActionLink("خروج", "Logout")
}
else{
@Html.ActionLink("ورود", "login")
<br />
@Html.ActionLink("ثبت نام", "GetUser")
}
}
在调用User.Identity.IsAuthenticated
后的下一个请求之前, FormsAuthentication.SetAuthCookie()
将不会设置为true。
如果您使用的是IE :IE是否在本地阻止了Cookie?您的隐私设置可能过于严格。如果不是,那么检查经过身份验证的用户是正确的。