【发布时间】:2021-05-19 07:23:36
【问题描述】:
我正在开展一个教育项目,并且很难组织该项目。 在过去的三天里,我一直在努力寻找解决方案,但还没有找到任何解决方案。 我正在尝试使构建输出尽可能干净和有条理。
问题 我已经加载了两个具有依赖关系的 nuget 包。 因此,当我构建项目时,所有 DLL 文件都在配置文件(调试或发布)的主/根目录中创建。
**Issue Terminal/bin/Debug/net5.0:**
/Core.dll (Project reference)
/MySql.Data.dll
/Terminal.Gui.dll
/Dependency1.dll
/Dependency2.dll
/Dependency3.dll
/Dependency...dll```
**Goal Terminal/bin/Debug/net5.0:**
/bin/server/Core.dll (project reference)
/bin/packages/MySql.Data.dll
/bin/packages/Terminal.Gui.dll
/bin/packages/Dependency1.dll
/bin/packages/Dependency2.dll
/bin/packages/Dependency4.dll
/bin/packages/Dependency....dll
【问题讨论】:
-
执行程序所需的所有引用都必须在同一目录中。如果出于某种原因,您可以在编译时将它们放在不同的位置,但程序将无法运行。
-
@MartinCostello 有没有减少 DLL 的数量?因为现在我有 18 个 DLL,只有 3 个引用
-
它们被放在那里是因为在你的依赖树的某个地方需要它们才能让你的应用程序工作。除了“它更整洁”之外,您还有什么理由希望应用程序目录中的文件更少?
-
@MartinCostello 你好,原因是项目的大小。
-
也许你应该研究一下装配修剪:docs.microsoft.com/en-us/dotnet/core/deploying/…
标签: c# visual-studio nuget