在Visual Studio 2015 C#项目中,有没有办法有选择地安装NuGet包的组件? (除了手动添加引用)
背景
我最近一直在使用Microsoft.CodeAnalysis.CSharp
包。这个包包含了我需要的几个库:
Microsoft.CodeAnalysis
Microsoft.CodeAnalysis.CSharp
它还安装了许多依赖它们的库。对于我正在使用的功能,我只需要这两个:
System.Collections.Immutable
System.Reflection.Metadata
但是它还安装了我不需要的更多库:
System.AppContext
System.ComponentModel.Composition
System.Console
System.Diagnostics.FileVersionInfo
System.Diagnostics.StackTrace
System.IO.FileSystem
System.IO.FileSystem.Primatives
System.Numerics
System.Security.Cryptography.Algorithms
System.Security.Cryptography.Encoding
System.Security.Cryptography.Primitives
System.Security.Cryptography.X509Certificates
System.Text.Encoding.CodePages
System.Threading.Thread
System.Xml
System.Xml.Linq
System.Xml.XmlDocument
System.Xml.XPath
Systen.Xml.XPath.XDocument
我是否可以在安装软件包时检查我想要的库的框?
答案 0 :(得分:3)
根据the docs,只有 -IgnoreDependencies 命令可以帮助我们忽略所有依赖项。我们不能忽略部分依赖。
但您可以使用 -IgnoreDependencies 实现您的需求,请参阅以下步骤:
安装Microsoft.CodeAnalysis.CSharp软件包时没有任何依赖:
安装包Microsoft.CodeAnalysis.CSharp -IgnoreDependencies
安装依赖包Microsoft.CodeAnalysis。普通包装没有任何依赖:
安装包Microsoft.CodeAnalysis.Common -IgnoreDependencies
安装依赖包System.Collections.Immutable和System.Reflection.Metadata包:
Install-Package System.Collections.Immutable
Install-Package System.Reflection.Metadata
如果您不需要使用“System.Collections.Immutable”和“System.Reflection.Metadata”的依赖关系,您也可以使用相同的选项来忽略依赖关系。