visual studio如何知道NuGet包中的哪些程序集要引用?

时间:2017-08-28 19:09:54

标签: visual-studio nuget

发布了一个包含许多程序集的NuGet包。并非所有NuGet包中的程序集都需要在Visual Studio的*.csproj中引用。 Visual Studio如何确定要引用的程序集?是nuget.exe中的逻辑还是在某些NuGet API中?

1 个答案:

答案 0 :(得分:2)

  

Visual Studio如何确定要引用的程序集?是nuget.exe中的逻辑还是在某些NuGet API中?

此确定应该是Visual Studio中nuget.exe和NuGet API的组合。 Visual Studio使用NuGet.exe下载软件包,然后使用NuGet API in Visual Studio将相应的程序集安装到项目中。

首先,当使用基于约定的工作目录时,NuGet支持将同一个库的多个版本放在一个包中。因此,我们将使用不同的区分大小写的框架名称来专门针对包含lib下的子文件夹的多个框架:

lib\{framework name}[{version}]

然后我们将在Visual Studio中使用NuGet API将软件包安装到项目中,它会尝试将程序集的框架名称与项目的目标框架相匹配

此外,Visual Studio的NuGet包管理器是nuget.exe和nuget API组合的实例,因此Visual Studio知道NuGet包中的哪些程序集要引用。

您可以参考NuGet文档Supporting multiple .NET framework versions了解更多详细信息。