7

Farklı Alanlarda bir MVC5 uygulamasına sahibim. Proje, navbarda bir Oturum Kapatma bağlantısıyla oluşturulmuştur, ancak kullanıcı Alanlardan herhangi birinde bulunuyorsa, bağlantı kesilir.MVC5 Oturum kapat bağlantı farklı alanlardan başarısız oluyor

new { area = "" } 

doğru yere geri bağlantı noktası ama bu ya ya da ben yanlış yerde denedim değildir: Ben ekleyerek düşündüm. aşağıdaki gibi Kod: ihtiyacı ne

@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> 
    } 

Herhangi bir fikir ne olursa olsun Alan kullanıcı şu anda ne Oturumu Kapat iş var değiştirilecek?

+0

Ben 'Yeni {bölge = ""}' senin Kanununda snippet'inin herhangi oluşumunu göremez. Doğru yer, 'Html.BeginForm (...) 'parametreleri – thmshd

cevap

12

doğru yer Html.BeginForm(...) parametreler dahilinde geçerli:

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

'un içinde yer alıyor. Bunu koydum ama herhangi bir etkisi olmadı, bu yüzden yanlış olduğumu düşündüğümden tekrar çıkardım. – user3632714