Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在项目中手动引用nuget安装的DLL_C#_Msbuild_.net Assembly - Fatal编程技术网

C# 在项目中手动引用nuget安装的DLL

C# 在项目中手动引用nuget安装的DLL,c#,msbuild,.net-assembly,C#,Msbuild,.net Assembly,我正在开发一个包含多个项目的解决方案。在其中一个项目(比如projecta)中,我安装了一个nuget包,比如实用程序,我想使用的函数位于实用程序.dll中。这会将实用程序.dll的所有依赖项添加到项目A的项目引用中 现在,通过右键单击-->添加引用-->现有项-->浏览-->添加,我已将Utility.dll添加到同一解决方案中的另一个Project B 这不会在项目参考中添加Utility.dll的依赖项,而是在生成所有依赖项后将其复制到/bin/debug文件夹 我想知道:- msbuil

我正在开发一个包含多个项目的解决方案。在其中一个项目(比如
projecta
)中,我安装了一个nuget包,比如
实用程序
,我想使用的函数位于
实用程序.dll
中。这会将
实用程序.dll的所有依赖项添加到
项目A的项目引用中

现在,通过右键单击-->添加引用-->现有项-->浏览-->添加,我已将
Utility.dll
添加到同一解决方案中的另一个
Project B

这不会在项目参考中添加
Utility.dll
的依赖项,而是在生成所有依赖项后将其复制到
/bin/debug
文件夹

我想知道:-

  • msbuild能否在运行时解析Utility.dll的依赖项并自动复制其依赖项
  • 如果,msbuild可以解析依赖项,它是引用某个清单文件还是反汇编dll并读取其依赖项,因为
    实用程序.dll的依赖项位于
    /package
    的不同文件夹中

  • MSBuild只查找相关文件(pdb、xml等),但只查找经典的NuGet引用

    我建议在使用
    packages.config
    时,只使用NuGet引用包,而不要手动将直接引用添加到包文件夹

    对于在csproj中使用而不是在legacy packages.config方法中使用的项目,默认情况下,这些依赖项也会传递()