2013-10-15 73 views
1
@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.IsAuthenticatedfalse@User.Identity.Name is =""不将数据发送到主页

,但我得到的登录表的数据,然后登录回到主页,但我不为显示User.Identity.Name为什么得到的数据?

请帮帮我。

+0

Aeemm,我在这里看不到纯粹的C#? –

回答

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不会被设置为true,直到调用FormsAuthentication.SetAuthCookie()后的下一个请求。

如果您使用IE:IE是否在本地阻止Cookie?您的隐私设置可能过于严格。如果不是,您的方式是正确的,以检查经过身份验证的用户。