【问题标题】:Reference an ASP.NET Core Class Library引用 ASP.NET Core 类库
【发布时间】:2017-09-14 05:13:48
【问题描述】:

我有一个包含自定义标签助手的核心类库。我想将此作为参考添加到核心 Web 应用程序中。

我在 Visual Studio 中右键单击项目,选择添加引用并浏览到文件夹并选择 dll。

但是当我尝试使用 @addTagHelper 我得到:

无法解析包含程序集“LC_PUBLIC_CORE”的 TagHelper。错误:无法加载文件或程序集“LC_PUBLIC_CORE,Culture=neutral,PublicKeyToken=null”。系统找不到指定的文件。

我的代码:

LC_Public(类库)

namespace LC_PUBLIC_CORE.TagHelpers
{
    [HtmlTargetElement("LC_meta")]
    public class MetaTagHelper : TagHelper
    {
        private IHostingEnvironment _env;

        [HtmlAttributeName("filename")]
        public string Filename { get; set; } = "default.txt";

        public MetaTagHelper(IHostingEnvironment env)
        {
            _env = env;
        }

        public override void Process(TagHelperContext context, TagHelperOutput output)
        {
            output.Content.SetContent(System.IO.File.ReadAllText(System.IO.Path.Combine(_env.WebRootPath, "META", this.Filename)));
        }
    }
}

ASP_NET_CORE_Standard(Web 应用程序)-_ViewImports.cshtml

@using ASP_NET_CORE_Standard
@using LC_PUBLIC_CORE
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@addTagHelper *, LC_PUBLIC_CORE

我需要添加任何额外的代码吗?

【问题讨论】:

  • 您的最后一行 @addTagHelper 使用的格式与倒数第二行不同(且已过时)。通配符的使用也完全不同。 @addTagHelper的第一个参数是标签助手类名(*为所有),第二个参数是标签助手所在的命名空间
  • @tseng 我已经更改了格式,但仍然是同样的错误。如果我使用 LC_PUBLIC_CORE.TagHelpers 我得到“无法解析包含程序集 'LC_PUBLIC_CORE.TagHelpers' 的 TagHelper ”,在引用上定义 Copy Local = true 也没有做任何事情
  • 您在更改解决方案后是否重新构建了解决方案?有些东西不会立即被拾起(即 EF 核心模型更改和某些 Razor 方面,即用于脚手架)
  • 是的@tsemg 我试过了。但我认为奇怪的是“@using”语句看起来像是找到了程序集(在 Visual Studio 中不显示错误)。

标签: c# asp.net-mvc asp.net-core


【解决方案1】:

我通过创建一个新的解决方案并将这两个项目添加到解决方案中来使其工作。然后在 ASP_NET_CORE_Standard 中添加了对 LC_PUBLIC_CORE 项目的引用。

_ViewImports.cshtml

@using ASP_NET_CORE_Standard
@using LC_PUBLIC_CORE
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@addTagHelper *, LC_PUBLIC_CORE

【讨论】:

    猜你喜欢
    • 2019-03-04
    • 1970-01-01
    • 2016-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多