2016-10-06 4 views
0

Я использую mvc5 с аутентификацией по умолчанию и авторизацией, создав отдельную учетную запись пользователя в visual studio 2013. Но у меня есть проблема. в пути «/View/Shared/_LoginPartial.cshtml» имеет код следовать:аутентификация и авторизация в mvc5

@using Microsoft.AspNet.Identity 
@if (Request.IsAuthenticated) 
{ 
    using (Html.BeginForm("LogOff", "Account", FormMethod.Post, new { id = "logoutForm", @class = "navbar-right" })) 
    { 
    @Html.AntiForgeryToken() 

    <ul class="nav navbar-nav navbar-right"> 
     <li> 
      @Html.ActionLink("Hello " + User.Identity.GetUserName() + "!", "Manage", "Account", routeValues: null, htmlAttributes: new { title = "Manage" }) 
     </li> 
     <li><a href="javascript:document.getElementById('logoutForm').submit()">Log off</a></li> 
    </ul> 
    } 
} 
else 
{ 
    <ul class="nav navbar-nav navbar-right"> 
     <li>@Html.ActionLink("Register", "Register", "Account", routeValues: null, htmlAttributes: new { id = "registerLink" })</li> 
     <li>@Html.ActionLink("Log in", "Login", "Account", routeValues: null, htmlAttributes: new { id = "loginLink" })</li> 
    </ul> 
} 

я пытаюсь создать учетную запись для первого проекта и логин успешно. после, я создаю второй проект и запускаю, и я не вхожу в систему, но второй вход в проект отображается успешно. Я проверен Request.IsAuthenticated = true. почему я не вхожу в систему, но второй вход в проект отображается успешно. Сори, мой плохой английский

ответ

1

я думаю, что если вы используете код и сделать его сессии хорошо быть масло:

код:

Session ("Администратор") = "AdminLoginn" Session.Timeout = 120

этот код на странице входа

и вы должны проверить код на следующей странице: Если Session ("Администратор") <> "AdminLoginn" Тогда Response.Redirect ("AdminLogin.aspx", False) Exit Sub End If

Thanx

+0

да, спасибо. Этот способ является решением. Но почему личность путается. есть какой-либо другой способ? – john