【发布时间】:2011-04-04 10:10:56
【问题描述】:
在 VS2010 中,当我右键单击我的 web.config 文件时,“添加配置转换”选项是灰色的。
知道如何找回它吗?
【问题讨论】:
标签: vb.net visual-studio-2010 visual-studio web-config
在 VS2010 中,当我右键单击我的 web.config 文件时,“添加配置转换”选项是灰色的。
知道如何找回它吗?
【问题讨论】:
标签: vb.net visual-studio-2010 visual-studio web-config
它是灰色的,因为所有列出的配置都已经进行了转换。
我看不到转换文件,因为 vb.net 以其无限的智慧决定不原生显示相关的配置文件。显然别无选择,只能选择“显示所有文件”才能看到它们。
【讨论】:
也可以完全避免配置管理器对话框,直接编辑项目文件,根据需要添加尽可能多的额外配置文件。
这在使用更高级的配置转换工具(如 CodeAssassin.ConfigTransform 或 SlowCheetah)时特别有用。
<ItemGroup>
<Content Include="web.config">
<SubType>Designer</SubType>
</Content>
<Content Include="web.debug.local.config">
<DependentUpon>web.config</DependentUpon>
</Content>
<Content Include="web.debug.cloudstaging.config">
<DependentUpon>web.config</DependentUpon>
</Content>
<Content Include="web.release.cloudprod.config">
<DependentUpon>web.config</DependentUpon>
</Content>
</ItemGroup>
【讨论】:
如果您想真正看到“添加配置转换”已启用,请使用配置管理器添加新配置。或者删除任何配置文件 web.release.config 或 web.Debug.config。 这是 Visual Studio 对每个环境都有一个配置文件的限制。
【讨论】:
对我有用的是右键单击发布配置文件并选择“添加配置转换”,然后我复制了我们为 QA、UAT、生产等进行转换的现有代码。
【讨论】:
重新启动 Visual Studio 对我有用。我不会说它对每个人都有效,但绝对值得一试。
我有 5 个配置,但只有 3 个转换文件。我没有处于调试模式,但该选项仍然是灰色的。
【讨论】:
我已经从配置管理器添加了额外的配置后遇到了这个问题。
在 Visual Studio 启用“添加配置转换”之前,我必须删除它们并重新添加它们
我猜网络项目中的这些配置在某些时候被删除/损坏,需要重置。
【讨论】:
我们的解决方案包含 140 多个项目和超过 13 种不同的配置,除了默认的调试和发布配置。我在该解决方案中的一个项目中遇到了同样的问题。 Add Config Transforms 项是灰色的,但我只有 Debug 和 Release web.config 转换。我相信这是因为在创建所有自定义配置之后,该项目可能已添加到解决方案中。
我进入配置管理器并观察到该项目没有所有其他配置可用。我必须通过指定名称来手动添加每个缺少的配置。完成后,添加配置转换就可用了。
【讨论】:
如果是您通过配置管理器添加的自定义配置,请务必在创建配置时选中“创建新项目配置”复选框(默认情况下未选中)。
【讨论】:
我遇到了同样的问题。我的解决方案是安装SlowCheetah 以添加另一个配置转换。奇怪,但效果很好。
【讨论】:
我有一个名为“Dev”的现有配置的场景。 Web.config 下没有 Web.Dev.congig 文件,添加的菜单选项被禁用。
我删除了配置并重新添加了它。执行此操作后,它添加了一个新的 Web.Dev.config 文件并启用了菜单选项以“添加配置转换”。我怀疑 csproj 文件中存在一些混乱。
似乎在 VS2015 中已经消除了一些这种困惑。
【讨论】: