#c# #asp.net-core #asp.net-core-mvc #asp.net-core-3.1 #asp.net-core-tag-helpers
#c# #asp.net-core #asp.net-core-mvc #asp.net-core-3.1 #asp.net-core-tag-helpers
Вопрос:
Редактировать: после пары перезагрузок компьютера он начал работать сейчас. Очень странно!Спасибо всем за потраченное время. 🙂
После просмотра нескольких ответов от SO я все еще не могу заставить его работать.
Я просто следую примеру из книги: Pro ASP.NET Core 3
Адама Фримена.
Начал с простого .Приложение NET core mvc с командной строкой:
dotnet new globaljson --sdk-version 3.1.100 --output PartyInvites
dotnet new mvc --no-https --output PartyInvites --framework netcoreapp3.1
Настройка контроллера:
public class HomeController : Controller
{
public IActionResult Index()
{
return View();
}
public IActionResult RsvpForm()
{
return View();
}
}
У Index.cshtml
него есть этот простой тег привязки:
<a asp-action="RsvpForm">RSVP Now</a>
Полный файл со структурой проекта:
Я видел во многих ответах, что нам нужно использовать это:
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
но, похоже, у меня уже есть это в моем _ViewImports.cshtml
, которое выглядит так:
@using PartyInvites
@using PartyInvites.Models
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
Я даже попробовал старый добрый метод action link, но это тоже не сработало:
@Html.ActionLink("RSVP Now", "RsvpForm", "Home", new object { }, new { @class = "btn btn-primary" })
Во время запуска приложения я никогда не вижу ссылку:
Ссылка даже не присутствует в отображаемом HTML:
Что я мог здесь делать не так? Спасибо за ваше время!
PS: я включен Visual Studio Community 2019 for Mac
(macOS Catalina v 10.15.7).
Если вы хотите взглянуть на весь проект, я также разместил его на Github:
Комментарии:
1. Убедитесь
_ViewImports.cshtml
, что он находится в нужном месте.2.
asp-action
Выделяется в Visual Studio? Я бы предположил, что это не так, и что вам нужно включить@addTagHelper
, потому что вы убиваетеLayout
, но я могу ошибаться3. Вы пробовали добавить asp-контроллер «controllerName»?
4. @CamiloTerevinto Я добавил скриншот, который показывает структуру проекта, а также показывает, что
asp-action
выделено.5. Привет @AshK, я также протестировал ваш проект. Это работает хорошо. Возможно, вам нужно восстановить свой vs.
Ответ №1:
Измените _ViewImports.cshtml
файл, чтобы он содержал следующее:
@using YouApplicationName
@using YouApplicationName.Models
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers