配置管理器中缺少配置设置

7
我经常在解决方案的“配置管理器”中创建自定义构建配置。当我将先前创建的项目包含到解决方案中时,它们不会自动包含这些新的配置。我发现将适当的配置设置应用于这些项目的唯一方法是手动编辑项目文件。
有没有一种方法可以强制解决方案中的所有项目都使用相同的“配置管理器”配置集?
4个回答

15

我发现删除所有配置,再重新添加它们可以修复解决方案中的所有项目。


只需删除并重新添加损坏的配置也可以解决问题。例如,如果一个项目缺少测试配置,则删除并重新添加即可修复该问题。 - Taras Alenin
@TarasAlenin,你怎么能轻松地做到这一点,而不需要手动重新配置它们? - erotavlas

3
VS2010 "Export Template Wizard"扩展程序可以处理这种情况。您需要创建一个项目并设置所有配置、文件等,然后将其导出为模板。当您启动新项目时,可以选择新模板,配置管理器中的设置将保留。我创建了一个简单的测试项目,这个方法有效。但是,这不适用于您已经创建的任何项目。 DevGuy的博客文章详细介绍了该过程,并配有图片。

2

我刚刚碰到了同样的问题,以下是我是如何解决的。

首先关闭 Visual Studio 并在新项目中查找项目 guid。您可以通过查看 .csproj 文件来实现此目的。然后在文本编辑器(如 Notepad++)中打开解决方案文件。

在解决方案文件中,找到名为 GlobalSection(ProjectConfigurationPlatforms) = postSolution 的部分。

在那里,您将会看到每个项目的配置清单。您会注意到,您的新项目可能已经针对您的配置设置但是它们将显示为下面示例中所示的DEBUGRELEASE模式。

{2E6B7D61-640E-4878-BE6D-7CD705AB9A6A}.Staging|Any CPU.ActiveCfg = Debug|Any CPU
{2E6B7D61-640E-4878-BE6D-7CD705AB9A6A}.Staging|Any CPU.Build.0 = Debug|Any CPU
{2E6B7D61-640E-4878-BE6D-7CD705AB9A6A}.Live|Any CPU.ActiveCfg = Debug|Any CPU
{2E6B7D61-640E-4878-BE6D-7CD705AB9A6A}.Live|Any CPU.Build.0 = Debug|Any CPU

为了解决这个问题,将Debug|Any CPU更改为您的配置。因此,在我上面的示例中,我的设置将变为以下内容:
{2E6B7D61-640E-4878-BE6D-7CD705AB9A6A}.Staging|Any CPU.ActiveCfg = Staging|Any CPU
{2E6B7D61-640E-4878-BE6D-7CD705AB9A6A}.Staging|Any CPU.Build.0 = Staging|Any CPU
{2E6B7D61-640E-4878-BE6D-7CD705AB9A6A}.Live|Any CPU.ActiveCfg = Live|Any CPU
{2E6B7D61-640E-4878-BE6D-7CD705AB9A6A}.Live|Any CPU.Build.0 = Live|Any CPU

保存更改,然后重新启动Visual Studio并打开您的解决方案。


0
你可以编写一个Visual Studio宏来自动完成这个过程。将其绑定到菜单按钮上,这样你就可以一键将这些配置添加到项目中了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接