MVC Web.Debug.Config 有关调试模式的问题

发布于 2024-11-07 05:35:20 字数 656 浏览 0 评论 0原文

这可能是一个简短的问题。我对解决方案配置和 web.config xml 文件转换非常陌生。我想添加一个转换,将 Asp.Net Mvc 网站的编译元素的调试属性设置为 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 文件的目的是允许自动设置...我可以让 Visual Studio 在按 F5 后使用转换后的 Web.config 文件吗?

非常感谢!

安德鲁

This is probably a quick question. I'm very new to solution configurations and web.config xml file transformations. I wanted to add a transformation to set the debug attribute for the compilation element of an Asp.Net Mvc website to true:

Web.Debug.config:

  <system.web>
    <compilation debug="true" xdt:Transform="SetAttributes(debug)" />
  </system.web>

Web.config:

<compilation targetFramework="4.0">
  <assemblies>
         ...
  </assemblies>
</compilation>

but when I press F5, a window pops up in Visual Studio saying "The page cannot be run in debug mode because debugging is not enabled in the web.config file." It then gives me the option to alter the Web.config file. But I thought the point of the Web.Debug.config file was to allow this to get set automatically... Can I get Visual Studio to use the transformed Web.config file after pressing F5?

Many thanks in advance!

Andrew

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

勿忘初心 2024-11-14 05:35:20

好的,我决定改用以下设置:

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”覆盖。

Okay, I've decided to use the following setup instead:

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>

This should cause the compilation debug attribute to get overwritten with "false" when the build deployment configuration is set to "release".

追我者格杀勿论 2024-11-14 05:35:20

根据我的经验,使用 F5 或 Visual Studio 调试器时不会发生转换。它仅在您发布网站后进行转换。

From my experience, Transformations do not happen when using the F5 or visual studio debugger. It only does transformations after you publish the website.

猫七 2024-11-14 05:35:20

试试这个

< compilation xdt:Transform="RemoveAttributes(debug)" />

Try this

< compilation xdt:Transform="RemoveAttributes(debug)" />
终止放荡 2024-11-14 05:35:20

在 Visual Studio 2013 中,如果您只有一个 web.config 文件,则可以右键单击它并选择“添加配置转换”。默认情况下,它包含

<compilation xdt:Transform="RemoveAttributes(debug)" />

删除 debug="true" 的 。

In Visual Studio 2013 if you only have a web.config file, you can right click it and choose "Add Config Transform". By default it contains the

<compilation xdt:Transform="RemoveAttributes(debug)" />

which removes the debug="true".

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文