我有我发布到NuGet的.NET Core类库。将它们升级到VS 2017 csproj格式后,它们具有以下签名。
<Project Sdk="Microsoft.NET.Sdk">
...
</Project>
添加Microsoft.NET.Sdk
似乎添加了对基本库集的引用。但是,作为一名图书馆作者,我可能只希望引用一组最小的参考文献。这仍然是真的,如果是这样,它怎么能实现呢?
查看ASP.NET核心和实体框架核心项目,他们似乎使用Microsoft.NET.Sdk
并且不单独选择他们需要的软件包。
更新
我在GitHub上提出问题dotnet/cli #5994并且@davidfowl说:
新指南是将NETStandard.Library始终作为包作者引用。
然而,他没有详细说明原因?
答案 0 :(得分:2)
您可以设置
<PropertyGroup>
<DisableImplicitFrameworkReferences>true</DisableImplicitFrameworkReferences>
</PropertyGroup>
在.csproj中。这告诉SDK不要隐式引用.NETStandard.Library或Microsoft.NETCore.App。