7

Tôi có một ứng dụng MVC5 với một số Khu vực khác nhau. Dự án được tạo bằng liên kết Đăng xuất trong thanh điều hướng, nhưng nếu người dùng ở bất kỳ Khu vực nào, liên kết sẽ bị hỏng. Tôi nghĩ thêm:Liên kết Đăng xuất MVC5 không thành công từ các Vùng khác nhau

new { area = "" } 

sẽ trỏ liên kết trở lại đúng địa điểm nhưng không hoặc tôi đã thử nó sai địa điểm. Mã như sau:

@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("Log in", "Login", "Account", routeValues: null, htmlAttributes: new { id = "loginLink" })</li> 
     </ul> 
    } 

Bất kỳ ý tưởng nào về những gì cần phải thay đổi để có tính năng Đăng xuất bất kể khu vực người dùng hiện đang ở?

+0

Tôi không thể nhìn thấy bất kỳ sự xuất hiện của đoạn 'mới {diện tích = ""} 'trong Code của bạn. Đúng chỗ nằm trong các tham số 'Html.BeginForm (...)' – thmshd

Trả lời

12

Nơi đúng là trong các thông số Html.BeginForm(...):

using (Html.BeginForm("LogOff", "Account", new { area = "" }, FormMethod.Post, new { id = "logoutForm", @class = "navbar-right" })) 
+0

Đó là nơi tôi đặt nó nhưng nó không có tác dụng gì nên tôi lấy nó ra một lần nữa vì tôi nghĩ mình phải sai. – user3632714

Các vấn đề liên quan