简短答案
Microsoft.AspNetCore.App
在您的.csproj文件中的软件包引用中添加显式版本。
长答案
我有一个全新的netcoreapp2.1项目。以下是.csproj文件中的文件。请注意,没有与Microsoft.AspNetCore.App
软件包参考相关联的版本。
<ItemGroup>
...
<PackageReference Include="Microsoft.AspNetCore.App" />
...
</ItemGroup>
我添加了对该Microsoft.Extensions.Logging.Abstractions
程序包的显式引用,以解决依赖项不匹配(构建错误)的问题。Micorsoft.AspNetCore.App
需要此依赖项的2.1.0版本,但另一个软件包则需要版本2.1.1。我的.csproj文件现在看起来像这样。
<ItemGroup>
...
<PackageReference Include="Microsoft.AspNetCore.App" />
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="2.1.1" />
...
</ItemGroup>
这样就将生成错误减少为警告,提示您Micorsoft.AspNetCore.App
需要Microsoft.Extensions.Logging.Abstractions
软件包的2.1.0版本,但是当然可以解决版本2.1.1。
Micorsoft.AspNetCore.App
如OP所述,程序包管理器阻止了尝试更新至2.1.1版以修复警告的问题。
我更新了Micorsoft.AspNetCore.App
程序包参考,以明确使用2.1.1版。
<ItemGroup>
...
<PackageReference Include="Microsoft.AspNetCore.App" Version="2.1.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="2.1.1" />
...
</ItemGroup>
这修复了构建警告,并取消了Microsoft.AspNetCore.App
Package Manager中所有版本的阻止。我什至可以删除显式引用,Microsoft.Extensions.Logging.Abstractions
而无需重新引入原始错误。最终的.csproj看起来没有问题。
<ItemGroup>
...
<PackageReference Include="Microsoft.AspNetCore.App" Version="2.1.1" />
...
</ItemGroup>