我发现引用Microsoft.AspNetCore.App
框架(也称为ASP.NET Core 3.0)的应用程序使用来自程序集Microsoft.AspNetCore.Mvc.Abstractions,Version=3.0.0.0
的类型。
但我找不到与版本3.0.0
相同的NuGet包。现在应该如何引用包?例如,如果我想覆盖ControlBase
,并且在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,配置: Debug Any CPU ------
1>C:\Program Files\dotnet\sdk\3.0.100\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(263,5): error NETSDK1073: 未识别 FrameworkReference 'Microsoft.AspNetCore.App' 1>生成项目“ClassLibrary1.csproj”失败。 ========== 重新生成全部: 成功 0 个,失败 1 个,跳过 0 个 ==========
TargetFramework>netstandard2.1</TargetFramework>
已检查,没有其他库。即使在新的空C#库中(当然是netstandard2.1
),也是如此。 - Roman Pokrovskijnetstandard
。当我将目标框架更改为netcoreapp3.0
,并添加FrameworkReference
时,一切正常。 - ESGnetstandard2.1
子集(在Microsoft.AspNetCore.Mvc.Abstractions
中可能依赖于平台),然后将其专门发布到netcoreapp3.0
。对于微软架构师的任性来说,没有任何限制。 - Roman Pokrovskij