c# – 优化Visual Studio解决方案构建 – 放置DLL文件的位置?

我发现如果你没有在任何地方启用“复制本地”,那么很多项目的C#解决方案的构建时间会快得多.我做了一些测试,似乎(至少对于我们的解决方案)我们可以通过删除“复制本地”来增加构建时间2-3倍.这可能意味着我们必须将库存储在某个公共目录中.

任何建议/最佳实践如何实现这一目标?请注意,我想保留对项目的引用,而不是DLL.

解决方法:

我们重新定位项目的输出目录为../../Debug(或../../Release)
我们的库也放在这些目录中.

我们将每个项目中的引用路径相应地设置为Debug或Release目录(此设置保留在用户文件中,因为它是绝对引用而不是相对引用)

我们将项目引用保留为项目引用,所有dll引用都复制本地false和特定版本false,除非它们是我们知道将在所有已部署机器上的GAC中的系统级dll.

这可以通过命令行在IDE模仿脚本构建中进行处理和手动构建(使用MSBuild)

不用于部署的测试项目不会将其输出定向到集中的Debug | Release目录,它们只使用标准的默认位置(并使用copy local来避免锁定问题)

可以通过自动构建过程更改库版本,替换Debug和Release目录中的dll.

上一篇:c#,MSBuild Bootstrapper with wix,如何下载.net framework 3.5 SP1?


下一篇:c# – 在CI机器上构建WCF库