Asp.net

如何為發布模式設置調試錯誤

  • February 28, 2014

我有這個 web.config 文件,其編譯選項設置如下

網頁配置

<configuration>
...
<system.web>
   <compilation debug="true" targetFramework="4.5" />
   ...
</system.web>
</configuration>

這是 Visual Studio 預設為發布模式設置的內容。

Web.Release.config

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<system.web>
   <compilation xdt:Transform="RemoveAttributes(debug)" />
</system.web>
</configuration>

我將它用於 MVC4 項目。根據本教程,當應用程序在發布模式下執行時,我期望提供 js 和 css 的縮小版本。但這似乎不起作用,並且正在提供 js 和 css 的非縮小版本。另一方面,如果我在 web.config 中將 debug 顯式設置為 false,則最小版本將正確提供。

當應用程序在Release Mode下執行時,這似乎是編譯標記轉換問題,但我不明白 Web.Release.config 中的相同問題有什麼問題。

簡而言之,我無法通過在Release Mode下執行應用程序來進行捆綁和縮小工作。

在 Web.Release.config 中定義的 Web.config 轉換僅在為相關配置部署/發布項目時完成。

僅將 Visual Studio 中的活動配置更改為發布並執行應用程序不會執行轉換。因此,web.config 保持不變。順便說一下,這種行為是合理的,因為 Web 應用程序是從包含原始 web.config 的項目目錄中執行的。如果 Visual Studio 要轉換 web.consign,您的原始 web.config 將被更改。

如果您尚未創建部署配置文件,您可以將應用程序發佈到文件系統以驗證行為。選擇發布作為執行部署的配置。應按預期執行轉換。

引用自:https://stackoverflow.com/questions/22086262