ASP.NET Core 3:如何在自定义库中引用 3.0.0 程序集?
Posted
技术标签:
【中文标题】ASP.NET Core 3:如何在自定义库中引用 3.0.0 程序集?【英文标题】:ASP.NET Core 3: How to reference 3.0.0 assemblies in custom libraries? 【发布时间】:2019-09-30 21:31:25 【问题描述】:我看到引用 Microsoft.AspNetCore.App
框架(AKA ASP.NET Core 3.0)的应用程序使用来自程序集 Microsoft.AspNetCore.Mvc.Abstractions, Version=3.0.0.0,
的类型
但我找不到具有相同版本3.0.0
的 NuGet 包。我现在应该如何引用包?例如。如果我想覆盖ControlBase
,如果有no such package versions on NuGet,我应该如何引用Microsoft.AspNetCore.Mvc.Core, Version=3.0.0.0
程序集?
添加以下内容后:
<ItemGroup>
<FrameworkReference Include="Microsoft.AspNetCore.App" />
</ItemGroup>
我还有另一种衰弱:
这给出了错误:
NETSDK1073
:无法识别 FrameworkReference 'Microsoft.AspNetCore.App' Routines.AspNetCore C:\Program Files\dotnet\sdk\3.0.100\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET。 Sdk.FrameworkReferenceResolution.targets 263
卸载和重新加载应用程序没有帮助。
同样的问题出现在一个空的新项目中:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<FrameworkReference Include="Microsoft.AspNetCore.App" />
</ItemGroup>
</Project>
编译
1>------ 重建全部启动:项目:ClassLibrary1,配置:调试任何 CPU ------
1>C:\程序 Files\dotnet\sdk\3.0.100\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(263,5): 错误 NETSDK1073:FrameworkReference 'Microsoft.AspNetCore.App' 未被识别 1> 已完成构建项目“ClassLibrary1.csproj”-- 失败的。 ==========全部重建:0成功,1失败,0跳过==========
【问题讨论】:
【参考方案1】:你需要在你的 csproj 中添加一个FrameworkReference
<ItemGroup>
<FrameworkReference Include="Microsoft.AspNetCore.App" />
</ItemGroup>
详情请见Migrate from ASP.NET Core 2.2 to 3.0
【讨论】:
谢谢... 为什么我不能引用唯一的一个程序集?我想了解架构师的动机...... 至少在我的情况下它不起作用。TargetFramework>netstandard2.1</TargetFramework>
已检查,没有其他库。即使在新的空 C# 库中(当然是netstandard2.1
)。
这可能是因为 asp.net core 3 需要 .net core 3,而不是 netstandard
。当我将目标框架更改为netcoreapp3.0
,并添加FrameworkReference
,一切正常。
他们写在netstadard2.1
子集中(Microsoft.AspNetCore.Mvc.Abstractions
中的平台依赖于什么?)然后专门发布它netcoreapp3.0
.. 对 MS 架构师的任性没有限制。以上是关于ASP.NET Core 3:如何在自定义库中引用 3.0.0 程序集?的主要内容,如果未能解决你的问题,请参考以下文章
WebResource-asp.net自定义控件引用外部资源方法
ASP.NET Core 类库中取读配置文件 appsettings.json