ASP. NET Core 3.1 MVC Виды в пользовательских областях не имеют такой же дизайн, как в стандартном - PullRequest
0 голосов
/ 30 марта 2020

Я новичок в ASP и создаю ASP. NET Core 3.1 MVC приложение. Я только что узнал об областях и создал один по имени Продавец.

Я добавил контроллер:

[Area("Seller")]
public class SellerController : Controller
{
    public IActionResult Index()
    {
        return View();
    }
}

и представление:

<h1>Hello @User.Identity.Name</h1>
<p>Use the menu below or the navigation bar to navigate the site</p>
<ul>
    <li class="nav-item">
        <a class="nav-link text-dark" asp-area="Seller" asp-controller="SellerProduct" asp-action="Index">ProductManagement</a>
    </li>
</ul>

Теперь моя проблема в том, что представление выглядит так:

Другая проблема, с которой я столкнулся, заключается в том, что эта строка:

<a class="nav-link text-dark" asp-area="Seller" asp-controller="SellerProduct" asp-action="Index">ProductManagement</a>

не ведет себя как ссылка, но как текст, я имею в виду, что «ProductManagement» написано на экране, но если я нажму на него или наведу на него, ничего не произойдет

Как я могу использовать дизайн по умолчанию, который есть на страницах по умолчанию, как этот.

enter image description here

Также, если это актуально, я звоню продавцу-контролеру, используя эту строку:

<a class="nav-link text-dark" asp-area="Seller" asp-controller="Seller" asp-action="Index">SellerHome</a>

Заранее благодарю за помощь.

Ответы [ 2 ]

1 голос
/ 30 марта 2020

Стиль:
Вам скорее нужно добавить Layout в шаблон или добавить _ViewStart.chtml в папке Area:

В шаблоне:
Layout = "~/Views/Shared/_Layout.cshtml";

Или _ViewStart.chtml (Районы> Продавец> Просмотров):

@{
    Layout = "~/Views/Shared/_Layout.cshtml";
}
0 голосов
/ 30 марта 2020

Чтобы открыть общий макет для всего приложения, переместите _ViewStart.cshtml из Views/Shared/_Layout.cshtml в папку приложения root.

См. https://docs.microsoft.com/en-us/aspnet/core/mvc/controllers/areas?view=aspnetcore-3.1#shared -layout-for- area-using-the-_viewstartcs html -file

Другая проблема, с которой я столкнулся, заключается в том, что эта строка: <a class="nav-link text-dark" asp-area="Seller" asp-controller="SellerProduct" asp-action="Index">ProductManagement</a> не ведет себя как ссылка, а как текст, я имею в виду " ProductManagement "пишется на экране, но если я щелкну по нему или наведу на него курсор, ничего не произойдет

Возможно, что помощники тегов не будут работать должным образом, проверьте /Views/_ViewImports.cshtml, чтобы добавить

@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
...