首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在引用NuGet包之后,避免在生成输出中出现多个DLL

在引用NuGet包之后,避免在生成输出中出现多个DLL
EN

Stack Overflow用户
提问于 2018-10-16 03:12:41
回答 1查看 411关注 0票数 3

我真的不熟悉构建输出,nuget包,dll地狱,库依赖等。

在将this NuGet package添加到我的类库之前,在我构建之后,在/bin文件夹中只生成了一个DLL。

在添加NuGet包之后,我在/bin文件夹中获得了100多个dll。

有没有办法只为c#类库生成一个DLL?

当我需要从遗留应用程序调用我的类库时,我必须复制我的类库构建输出中的所有ALL以避免错误-这有点麻烦。

这是我的.csproj:

代码语言:javascript
复制
<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>net461</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Intacct.SDK" Version="2.0.5" />
  </ItemGroup>

</Project>
EN

回答 1

Stack Overflow用户

发布于 2018-10-16 03:24:28

是的,你可以用ILMerge做到这一点。你将不得不添加额外的构建步骤:

代码语言:javascript
复制
<ItemGroup>
    <PackageReference Include="ILMerge" Version="2.15.0" />
  </ItemGroup>

  <Target Name="ILMerge">
    <!-- the ILMergePath property points to the location of ILMerge.exe console application -->
    <Exec Command="$(ILMergeConsolePath) /out:MyApp.exe MyApp.exe lib1.dll lib2.dll" />
</Target>

有关更多想法,请参阅Merge DLL into EXE?

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52823326

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档