我是否必须包含所有 System.Collections.Immutable 依赖项?
Do I have to include all System.Collections.Immutable dependencies?
我刚刚从(较旧的)Microsoft.Bcl.Immutable
NuGet 包切换到 System.Collections.Immutable
并且惊讶地发现我的项目中所有这些新包依赖项:
System.Collections
System.Diagnostics.Debug
System.Globalization
System.Linq
System.Resources.ResourceManager
System.Runtime
System.Runtime.Extensions
System.Threading
它们被列为 NuGet 包的依赖项,因此它们有权存在,但它们显然也已经安装在我的 PC 和我的目标环境(顺便说一句,Azure)上,因为它们随框架一起提供。
我的项目中已经有大量包,并且希望尽可能避免这 8 个包造成的额外开销(并且不要搬起石头砸自己的脚)。
删除这些依赖项是否安全?
我现在是否必须在整个项目中使用这些包,因为它们可能与安装的版本不同,我的项目的某些部分现在可能使用了错误的包? (由于某些 DLL 链接疯狂?)
编辑: 只是为了完整起见,因为之前有评论:依赖项是实际的包(不是名称空间)并且必须下载,我的目标是编译.NET 4.6,在 VS2015 中工作。尽管有些东西已经过时并且不必正常加载包,但完全有可能?
您只是看到了 Nuget 包的副作用,它必须让 很多 的人开心。该软件包支持大量目标,最近正在迅速扩散。我看到 Xamarin 支持 OSX 和 iOS、Windows Phone 8.0 和 8.1、Windows Store、CoreCLR(开源项目)、.NET 4.5 , MonoTouch 用于 iOS 和 Android 以及 .NETCore (Silverlight)。
这些依赖包仅包含 参考程序集 ,通常安装在您的 c:\program files x86\reference 程序集目录中的那种。 Nuget 包不会冒这样的参考程序集可能丢失的机会,而是包括整个套件和 kaboodle。
全部下载完成后,程序包安装程序会运行并在您的项目中添加您实际需要的引用。很容易看到发生了什么,只需打开项目的 References 节点。如果您的目标是 .NET 4.5 及更高版本的桌面版,则添加的引用总数为 一个 ,只是 System.Collections.Immutable。是的,您可以删除它们。
我刚刚从(较旧的)Microsoft.Bcl.Immutable
NuGet 包切换到 System.Collections.Immutable
并且惊讶地发现我的项目中所有这些新包依赖项:
System.Collections
System.Diagnostics.Debug
System.Globalization
System.Linq
System.Resources.ResourceManager
System.Runtime
System.Runtime.Extensions
System.Threading
它们被列为 NuGet 包的依赖项,因此它们有权存在,但它们显然也已经安装在我的 PC 和我的目标环境(顺便说一句,Azure)上,因为它们随框架一起提供。
我的项目中已经有大量包,并且希望尽可能避免这 8 个包造成的额外开销(并且不要搬起石头砸自己的脚)。
删除这些依赖项是否安全?
我现在是否必须在整个项目中使用这些包,因为它们可能与安装的版本不同,我的项目的某些部分现在可能使用了错误的包? (由于某些 DLL 链接疯狂?)
编辑: 只是为了完整起见,因为之前有评论:依赖项是实际的包(不是名称空间)并且必须下载,我的目标是编译.NET 4.6,在 VS2015 中工作。尽管有些东西已经过时并且不必正常加载包,但完全有可能?
您只是看到了 Nuget 包的副作用,它必须让 很多 的人开心。该软件包支持大量目标,最近正在迅速扩散。我看到 Xamarin 支持 OSX 和 iOS、Windows Phone 8.0 和 8.1、Windows Store、CoreCLR(开源项目)、.NET 4.5 , MonoTouch 用于 iOS 和 Android 以及 .NETCore (Silverlight)。
这些依赖包仅包含 参考程序集 ,通常安装在您的 c:\program files x86\reference 程序集目录中的那种。 Nuget 包不会冒这样的参考程序集可能丢失的机会,而是包括整个套件和 kaboodle。
全部下载完成后,程序包安装程序会运行并在您的项目中添加您实际需要的引用。很容易看到发生了什么,只需打开项目的 References 节点。如果您的目标是 .NET 4.5 及更高版本的桌面版,则添加的引用总数为 一个 ,只是 System.Collections.Immutable。是的,您可以删除它们。