我创建了一个使用多个 NuGet 包的库项目。当我将我的库作为引用加载到另一个项目中时,外部项目可以查看并调用我的库使用的所有引用。
MyLib.csproj
<PackageReference Include="System.Drawing.Common">
<Version>5.0.3</Version>
</PackageReference>
例如,显然使用
MyLib
的项目也可以访问 System.Drawing.Text
。
有没有办法隐藏
public
中的MyLib
引用类,这样外部项目就看不到它们?
听起来您正在寻找
<PrivateAssets>
元数据标签。
试试这个:
<PackageReference Include="System.Drawing.Common">
<Version>5.0.3</Version>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
您可以在此处阅读有关控制依赖项资产的更多信息。 这也适用于项目参考。