这可能是一个快速的问题。我是解决方案配置和web.config xml文件转换的新手。我想添加一个转换,将Asp.Net Mvc网站的编译元素的debug属性设置为true:
Web.Debug.config:
<system.web>
<compilation debug="true" xdt:Transform="SetAttributes(debug)" />
</system.web>
的Web.config:
<compilation targetFramework="4.0">
<assemblies>
...
</assemblies>
</compilation>
但是当我按F5时,Visual Studio中会弹出一个窗口,说“该页面无法在调试模式下运行,因为web.config文件中未启用调试。”然后,它为我提供了更改Web.config文件的选项。但我认为Web.Debug.config文件的目的是允许自动设置...在按F5后,我可以让Visual Studio使用转换后的Web.config文件吗?
非常感谢提前!
安德鲁
答案 0 :(得分:9)
好的,我决定改用以下设置:
的Web.config:
<configuration>
...
<system.web>
<compilation debug="true" targetFramework="4.0">
<assemblies>
...
</assemblies>
</compilation>
</system.web>
...
</configuration>
Web.Release.config:
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<system.web>
<compilation debug="false" xdt:Transform="SetAttributes(debug)" />
</system.web>
</configuration>
当构建部署配置设置为“release”时,这会导致编译调试属性被“false”覆盖。
答案 1 :(得分:4)
根据我的经验,使用F5或Visual Studio调试器时不会发生转换。它只在您发布网站后进行转换。
答案 2 :(得分:3)
试试这个
< compilation xdt:Transform="RemoveAttributes(debug)" />
答案 3 :(得分:2)
在Visual Studio 2013中,如果您只有web.config文件,则可以右键单击它并选择“添加配置转换”。默认情况下,它包含
<compilation xdt:Transform="RemoveAttributes(debug)" />
删除debug =“true”。