c# - 将外部配置复制到 Visual Studio 中的本地项目?

标签 c# visual-studio-2010 visual-studio visual-studio-2012

如果 Visual Studio 已经从另一个项目检测到构建配置,那么在大约 50-100 个项目(相同的解决方案)中创建构建配置的最简单方法是什么?

我们的团队在多个解决方案中使用了一组通用项目(命名空间简称为“通用”)。 Common 命名空间有自己的主解决方案和自己的构建配置集。 Common 的解决方案包含五个构建配置(“Debug-QA”、“Debug-Dev”等)。

只要在新解决方案(即“MyNewSolution”)中使用这些项目,Visual Studio 就会显示 Common 主解决方案的构建配置。遗憾的是,这些配置尚未在 MyNewSolution 或任何 MyNewSolution 的项目中创建。这会导致将构建配置添加到其他项目或将项目包含在这些构建配置中的问题,因为如果名称已经存在则无法创建构建配置(Visual Studio 认为它存在,这要归功于 Common包括的项目)。

我的目标是将相同的配置(即“Debug-QA”、“Debug-Dev”等)添加到 MyNewSolution 及其项目中,以便所有项目和解决方案都匹配。我能看到的唯一方法是在每个新项目上手动创建构建配置......这是一种折磨,因为 MyNewSolution 有大约 50-100 个项目。

仅供引用:我使用的是 Visual Studio 2012

最佳答案

这与其说是一个正确的解决方案,不如说是一种黑客攻击,但您始终可以:

  1. 使用 GUID 作为名称为整个解决方案创建所需配置的副本。
  2. 从已有原始配置的项目中删除副本(撤消更改)。
  3. 使用“在文件中查找/替换”工具将 GUID 重命名为原始配置的名称。

即使这不是一个非常可行的选择,它也是一个非常好的快速修复。

编辑:

如何从解决方案中手动删除配置:

在文本编辑器中打开解决方案文件后,您将看到一个名为 Global 的 block ,其中包含部分。 SolutionConfigurationPlatforms 部分包含配置的定义。还有一个名为 ProjectConfigurationPlatforms 的部分,其中分配了配置。只需从两个组中删除对配置的引用即可。如果您有更复杂的解决方案,则可能需要删除其他引用。这只是一个基本案例。

如何从项目中手动删除配置: 同样,在文本编辑器中打开项目文件后,您将看到许多对要删除的配置的引用。 C# 项目有一个以配置为条件的 PropertyGroup。您可以简单地完全删除该组。文件周围可能还有对配置的其他引用,因此请确保正确清理所有内容。

确保在出现问题时备份文件。

关于c# - 将外部配置复制到 Visual Studio 中的本地项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22618098/

相关文章:

c# - Program.vshost.exe 错误阻止运行程序

c++ - SDL 图像在 15 秒后消失

c# - Asp.net 核心领域本地化

c++ - 在 MSVC 2010 中编译 64 位应用程序

visual-studio-2010 - 如何在没有 Visual Studio 的情况下使用 MSTest?

visual-studio - 从 Visual Studio 2008-2010 切换时,我不想转换解决方案文件。如何?

c# - WPF MVVM - Treeview 中的项目在打开后未更新

c# - PRISM 5 MEF AvalonDock 2.0 DataAdapter 注册 View 和父项已选定

C# 十六进制转char

c++ - "sync"两个project里面同一个解决方法?