我正在尝试打包引用C++ DLL的.NET DLL.nuspec文件如下所示:
<?xml version="1.0"?>
<package >
<metadata>
<id>MyPackage</id>
<version>1.0.0</version>
<authors>some author</authors>
<owners>some owner</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>.NET Wrapper for rebuilt 64-bit version of MyPackage</description>
<copyright>Copyright 2014</copyright>
</metadata>
<files>
<file src="x64\MyPackage64.dll" target="content" />
<file src="MyPackageNET.dll" target="lib" />
</files>
</package>
Run Code Online (Sandbox Code Playgroud)
当我检查生成的nupkg文件时,内部文件结构显示正确.C++ DLL所在,content.NET DLL就在lib.
当我将nupkg安装到项目中时,内容DLL将添加到项目根目录中,并且lib DLL将添加到解决方案packages目录中.
但是,没有向项目添加引用.我被迫手动添加引用.我尝试将以下节点添加到元数据,但无济于事:
<references>
<reference file="MyPackageNET.dll" />
</references>
Run Code Online (Sandbox Code Playgroud)
难道我做错了什么?我已经从varoius .csproj文件生成了其他nuspec和nupkg文件,这些文件正确地添加了对已经安装它们的项目的引用.有什么关于我错过的个别DLL的包装是否保留了参考项目的添加?
在一个相关的说明,如果我不能自动添加引用,任何人都可以指导我任何资源,这将解释$ project.Object.Reference.Add方法的语法,或者它将帮助我以编程方式添加对DLL的引用我的项目?