Помощник по тегам ссылок не работает в ядре asp.net 2.2 - PullRequest
0 голосов
/ 16 февраля 2019

Мои помощники тегов ссылок больше не работают должным образом после перехода на asp.net core 2.2.

 <a class="btn btn-outline-primary" asp-controller="MyController" asp-action="MyAction" asp-route-id="@Id">Link</a>

Это работает нормально, когда я устанавливаю версию совместимости на 2.1, но выдает пустой href, когда установлено наверсия совместимости 2.2.

<a class="btn btn-outline-primary" href="">Link</a>

Я выполнил шаги Миграция с ASP.NET Core 2.1 на 2.2

 .SetCompatibilityVersion(CompatibilityVersion.Version_2_1);  --> Works

 .SetCompatibilityVersion(CompatibilityVersion.Version_2_2);  --> Doesn't work

Файл проекта:

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp2.2</TargetFramework>
    <TypeScriptToolsVersion>2.8</TypeScriptToolsVersion>
    <LangVersion>7.2</LangVersion>
    <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.App" />
    <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="2.2.2" />
    <PackageReference Include="Microsoft.Windows.Compatibility" Version="2.0.1" />
    <PackageReference Include="Sendgrid" Version="9.10.0" />
    <PackageReference Include="Stripe.net" Version="22.8.1" />
    <PackageReference Include="UAParser" Version="3.1.36" />
  </ItemGroup>

  <ItemGroup>
    <Folder Include="Data\Migrations\" />
  </ItemGroup>

</Project>

Ответы [ 2 ]

0 голосов
/ 19 июля 2019

Я довольно новичок в этой технологии, и у меня была такая же проблема.После того, как я добавил

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

в ViewImports.cshtml, как упоминалось здесь https://docs.microsoft.com/en-us/aspnet/core/mvc/views/tag-helpers/authoring?view=aspnetcore-2.2 все было хорошо.

0 голосов
/ 10 июня 2019

У меня сегодня была такая же проблема с новым проектом AspNet Core 2.2, созданным с использованием встроенного шаблона MVC.Теги не были сгенерированы в HTML.

, изменив следующее

services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);

на

services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);

Работаети теги теперь отображаются в HTML, я немного покопался, и похоже, что это поднято как проблема в AspNetCore 2.2.Они упоминают, что это было исправлено в AspNetCore 3.0.

Как упомянуто здесь: https://github.com/aspnet/AspNetCore/issues/5055 и здесь https://github.com/aspnet/AspNetCore/issues/6471

Если вам нужно использовать AspNetCore 2.2, тогда временный обходной путь, еслиВ вашем Startup.cs необходимо внести следующие изменения, как указано в поднятой проблеме.

services.AddMvc(options => options.EnableEndpointRouting = false)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...