Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.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包添加程序集引用_C#_.net_Visual Studio_Nuget_Nuget Package - Fatal编程技术网

C# 未随自定义nuget包添加程序集引用

C# 未随自定义nuget包添加程序集引用,c#,.net,visual-studio,nuget,nuget-package,C#,.net,Visual Studio,Nuget,Nuget Package,我有两个nuget包,其中一个依赖于另一个。在安装第二个程序包时,第一个程序包中程序集的程序集引用被正确添加到项目引用中,但是我不知何故无法添加后一个。我的规格有问题吗 // first <?xml version="1.0" encoding="utf-8"?> <package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd"> <metadata>

我有两个nuget包,其中一个依赖于另一个。在安装第二个程序包时,第一个程序包中程序集的程序集引用被正确添加到项目引用中,但是我不知何故无法添加后一个。我的规格有问题吗

// first
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
    <metadata>
        <id>first</id>
        ...
    </metadata>
    <files>
        <file src="..\src\MyFirstProject\bin\v4.0\MyFirstProject.dll" target="lib\net40-client\MyFirstProject.dll" />
        <file src="..\src\MyFirstProject\bin\v4.0\MyFirstProject.xml" target="lib\net40-client\MyFirstProject.xml" />
        <file src="..\src\MyFirstProject\bin\v4.5\MyFirstProject.dll" target="lib\net45\MyFirstProject.dll" />
        <file src="..\src\MyFirstProject\bin\v4.5\MyFirstProject.xml" target="lib\net45\MyFirstProject.xml" />
        <file src="..\src\MyFirstProject\bin\v4.6\MyFirstProject.dll" target="lib\net46\MyFirstProject.dll" />
        <file src="..\src\MyFirstProject\bin\v4.6\MyFirstProject.xml" target="lib\net46\MyFirstProject.xml" />
    </files>
</package>

// second
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
    <metadata>
        <id>second</id>
        ...
        <dependencies>
            <dependency id="first" ...
        </dependencies
    </metadata>
    <files>
        <file src="..\src\MySecondProject\bin\v4.6\MySecondProject.dll" target="lib\net46\MySecondProject.dll" />
        <file src="..\src\MySecondProject\bin\v4.6\MySecondProject.xml" target="lib\net46\MySecondProject.xml" />
    </files>
</package>
//首先
第一
...
//第二
第二
...
没关系,我修好了

问题在于
packages.config
的内容。我最初将目标项目创建为.NET4.5项目,并下载了.NET4.6 nuget包,这导致没有添加程序集引用。在我注意到我的错误后,我切换到.NET4.6作为项目平台,并手动调整了
packages.config
中的包版本,但不知何故VS记住了该设置,因此它没有改变任何东西。直到我从
package.config
中完全删除了每个包并重新安装之后,它才神奇地开始工作。奇怪的。:)

没关系,我修好了

问题在于
packages.config
的内容。我最初将目标项目创建为.NET4.5项目,并下载了.NET4.6 nuget包,这导致没有添加程序集引用。在我注意到我的错误后,我切换到.NET4.6作为项目平台,并手动调整了
packages.config
中的包版本,但不知何故VS记住了该设置,因此它没有改变任何东西。直到我从
package.config
中完全删除了每个包并重新安装之后,它才神奇地开始工作。奇怪的。:)