有时在编译解决方案的时候,希望两个项目有明确的编译顺序,而不是自动决定,或者在并行编译的时候同时编译。
本文介绍通过设置 sln 解决方案依赖来解决编译顺序问题。
设置解决方案级别的项目依赖
在解决方案上右键,然后选择“设置项目依赖”:
然后在弹出的项目依赖对话框中选择一个项目的依赖:
这时,如果看看解决方案文件(.sln)则可以看到多出了 ProjectDependencies
区:
1 2 3 4 5 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Walterlv.Demo", "Walterlv.DemoWalterlv.Demo.csproj", "{DC0B1D44-5DF4-4590-BBFE-072183677A78}" ProjectSection(ProjectDependencies) = postProject {98FF9756-B95A-4FDB-9858-5106F486FBF3} = {98FF9756-B95A-4FDB-9858-5106F486FBF3} EndProjectSection EndProject |
---|
更多关于 sln 文件的理解,可以阅读我的另一篇博客:
- 理解 Visual Studio 解决方案文件格式(.sln)
其他方法
本文的方法已加入到此类型解法的方法列表中,详情请看:
- 三种方法设置 .NET/C# 项目的编译顺序,而不影响项目之间的引用 - walterlv
本文会经常更新,请阅读原文: https://blog.walterlv.com/post/setup-project-dependencies-in-the-solution-file.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。
本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名 吕毅 (包含链接: https://blog.walterlv.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系 ([email protected]) 。