在 NuGet 包的 .nuspec 文件中,包依赖项是基于每个目标框架指定的。例如,在System.Collections.NonGeneric包中,这里是它的 TF 依赖项:
<dependencies>
<group targetFramework="MonoAndroid1.0" />
<group targetFramework="MonoTouch1.0" />
<group targetFramework=".NETFramework4.6" />
<group targetFramework=".NETStandard1.3">
<dependency id="System.Diagnostics.Debug" version="4.3.0" exclude="Compile" />
<dependency id="System.Globalization" version="4.3.0" />
<dependency id="System.Resources.ResourceManager" version="4.3.0" exclude="Compile" />
<dependency id="System.Runtime" version="4.3.0" />
<dependency id="System.Runtime.Extensions" version="4.3.0" exclude="Compile" />
<dependency id="System.Threading" version="4.3.0" exclude="Compile" />
</group>
<group targetFramework="Xamarin.iOS1.0" />
<group targetFramework="Xamarin.Mac2.0" />
<group targetFramework="Xamarin.TVOS1.0" />
<group targetFramework="Xamarin.WatchOS1.0" />
</dependencies>
它当然不包含所有 TFM,所以我的问题是:如果我的调用应用程序针对 .NET Framework 4.6.1 (.NET Standard 1.4) 会发生什么?由于 .NET Standard 1.4 >= 1.3,是否仍需要下载 6 个 System.* 包?或者因为我没有专门针对 .NET Standard 1.3 TFM,所以我的项目没有依赖项?感谢您的澄清。