[英]Dependent DLL in NuGet not copied to output directory of client
我有一個打包在NuGet包中的C#項目。 該項目依賴於外部非托管dll,如果我在本地構建解決方案,則可以將其復制到輸出中。 我已經設法將dll打包在NuGet包中,並將其放入客戶端項目中,但“復制到輸出目錄”始終設置為“不復制”。
我不使用.nuspec文件,因為我切換到了新的.csproj格式。
到目前為止,這是我的.csproj外觀:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<PackageId>External.Dll.Wrapper</PackageId>
<Authors>Me</Authors>
<Version>1.0.0</Version>
<Company>None</Company>
<Owners>Me</Owners>
<Copyright>Copyright © 2018</Copyright>
<Description>Wrapper for using external dll</Description>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<PlatformTarget>AnyCPU</PlatformTarget>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
<PlatformTarget>AnyCPU</PlatformTarget>
</PropertyGroup>
<ItemGroup>
<None Include="external.dll">
<Pack>true</Pack>
<CopyToOutput>true</CopyToOutput>
<PackageCopyToOutput>true</PackageCopyToOutput>
<PackageFlatten>false</PackageFlatten>
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>
也許有人可以告訴我我在做什么錯。 我已經花了整整一天的時間試圖解決這個問題,但是沒有運氣。 非常感謝!
如果您沒有直接從該dll
引用任何內容,則不會被復制。 如果將偽聲明放置在某個地方(甚至不必使用),則應將其復制過來。
externaldll.someclass mythingamajig
如果這樣不起作用,請檢查依賴項的相對路徑。 右鍵單擊Dependencies->Add reference->Browse->
然后選擇dll
文件並將其添加。 您可能必須手動添加該dll
才能在其中顯示它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.