[英]Add Reference to dll vs. adding a NuGet package in .NET Standard project
[英]NuGet Package fails to add reference to project for DLL inside lib directory
我正在嘗試打包引用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>
當我檢查生成的nupkg文件時,內部文件結構顯示正確。 C ++ DLL在content
,.NET DLL在lib
。
當我將nupkg安裝到項目中時,內容DLL將添加到項目根目錄中,並且lib DLL將添加到解決方案packages
目錄中。
但是, 沒有向項目添加引用 。 我被迫手動添加引用。 我嘗試將以下節點添加到元數據,但無濟於事:
<references>
<reference file="MyPackageNET.dll" />
</references>
難道我做錯了什么? 我已經從varoius .csproj文件生成了其他nuspec和nupkg文件,這些文件正確地添加了對已經安裝它們的項目的引用。 有什么關於我錯過的個別DLL的包裝是否保留了參考項目的添加?
在一個相關的說明,如果我不能自動添加引用,任何人都可以指導我任何資源,這將解釋$ project.Object.Reference.Add方法的語法,或者它將幫助我以編程方式添加對DLL的引用我的項目?
我遇到了同樣的問題,其他症狀是無法卸載軟件包。 我遵循了無法卸載/重新安裝NuGet包的指導, 並將packages.config文件添加到項目中 。 我不得不從我的解決方案文件夾中復制該文件,因為我的項目還沒有該文件。 這樣做可以糾正這兩種症狀
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.