Я определил область (Admin) в своем приложении ASP.NET MVC 3, создал _ViewStart.cshtml
в этой области и добавил Layout = "~/Views/Shared/_Layout.cshtml";
к ней, чтобы получить унифицированную разметку сайта.
Я также добавил следующий код к _Layout.cshtml
:
if (HttpContext.Current.User.IsInRole("Admin"))
{
<li>@Html.ActionLink("Items List", "Index", "Items", new { area = "Admin" }, null)</li>
}
Область Admin
отображается правильно, имея _Layout.cshtml
в качестве макета. Но все навигационные ссылки на странице теперь указывают на подпапку Admin
.
Например, в моем макете у меня есть <li>@Html.ActionLink("About Us", "About", "Home")</li>
, что указывает на Mysite/Home/About
. Но после нажатия на ссылку администратора, ссылка «О нас» указывает на /Admin/Home/About
.
Что я должен сделать, чтобы ссылки _Layout.cshtml указывали на правильный адрес?
Благодаря.