2014-07-18 35 views
1

enter image description here誤動作鏈接,裏面是面積

我使用的主要_Layout.cshtml我Index.cshtml這是在「區域 - >查看 - >主頁」。 由於此鏈接登錄&登錄名生成錯誤(這是在主_LogOnPartial.cshtml內)。

即,它作爲產生的 「http://本地主機/管理員/用戶/註銷」,但它應爲被生成的 「http://本地主機/用戶/註銷」

_LogOnPartial.cshtml代碼

<div class="btn-group pull-right"> 
    @if (Request.IsAuthenticated) 
    { 
     <text> 
     @* Welcome <strong>@User.Identity.Name</strong>!*@ 

     @Html.ActionLink("Log Off", "LogOff", "User", null, new { @class = "btn btn-action btn-first" }) </text> 
    } 
    else 
    { 
     <text>@Html.ActionLink("Log In", "Login", "User", null, new { @class = "btn btn-action btn-last" }) @Html.ActionLink("Register", "Register", "User", null, new { @class = "btn btn-action" })</text> 
    } 
</div> 
+0

你如何生成你的鏈接? –

+0

這是我們在_LogOnPartial.cshtml中使用的相同邏輯 –

回答

1

如果您想要生成不針對某個區域的網址,則需要確保區域路由值已被清除。您可以通過將區域路由值設置爲空字符串來實現此目的。

例如:

@Html.ActionLink("Log Off", "LogOff", "User", new { area = "" }, new { @class = "btn btn-action btn-first" }) 

這樣不管如果正在呈現視圖是與否,在共享部分的鏈接將總是爲「根」的控制器產生的區域的內部。