【问题标题】:Can't get Tag Helpers to work in .NET Core 2.1无法让标记帮助程序在 .NET Core 2.1 中工作
【发布时间】:2018-07-30 22:25:59
【问题描述】:

我一直在尝试关注https://docs.microsoft.com/en-us/aspnet/core/mvc/views/tag-helpers/authoring?view=aspnetcore-2.1 来让标签助手工作,但无论我做什么,它们都无法在智能感知中被识别,生成 html 的代码中没有断点,并且元素没有被转换.

这是我的 EmailTagHelper.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Razor.TagHelpers;

namespace eHealthy.TagHelpers
{
    public class EmailTagHelper : TagHelper
    {
        public override void Process(TagHelperContext context, TagHelperOutput output)
        {
            output.TagName = "a";    // Replaces <email> with <a> tag
        }
    }
}

这是我的 _ViewImports.cshtml

@using Microsoft.AspNetCore.Identity
@using eHealthy.Models
@using eHealthy.Models.AccountViewModels
@using eHealthy.Models.ManageViewModels
@using eHealthy.Helpers;
@using eHealthy.TagHelpers;


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

这是我尝试调用帮助程序的页面

@model EditViewModel

@{
    ViewBag.Title = "title";
    Layout = "_Layout";
}

@*<h2>title</h2>*@

<form method="post">
    <email>
        potato
    </email>
</form>


<input type="hidden"/>

【问题讨论】:

    标签: c# asp.net-core asp.net-core-tag-helpers


    【解决方案1】:

    取消引用您添加的标签助手。删除 eHealthy.TagHelpers 助手,您甚至不需要创建它。

    @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
    

    【讨论】:

    • 默认情况下,新的 taghelper 会在该命名空间中结束吗?
    • 哦,对不起,它们不是自动添加的。您将不得不添加第二个 taghelper 只是不要在 @addTagHelper 行中使用引号。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-23
    • 1970-01-01
    • 1970-01-01
    • 2019-03-05
    • 2023-04-08
    • 1970-01-01
    相关资源
    最近更新 更多