2009-06-25 70 views
1

我有一個生成(通過MSBuild)Web.config生成目標之前運行其內容包括,其中包括<編譯調試=「真正」>。將生成的Web.config複製到根目錄並放入「內容」項目組中。但是,當我(通過F5)運行在Visual Studio 2008中的調試版本,我得到了下面的對話框:爲什麼Visual Studio 2008在啓用調試時詢問是否啓用調試?

Debugging Not Enabled

如果我選擇「添加...」,然後單擊確定它似乎增加了生成的Web。配置到項目,並在IDE中顯示爲項目文件。所以也許問題應該是:爲什麼Web.config文件需要成爲項目的一部分?

我真的很想避免在源碼控制中包含項目中生成的配置文件。如果應用程序運行時Web.config文件存在,我不明白爲什麼應該關注Visual Studio。那麼有沒有辦法讓Visual Studio接受生成的Web.config,而不通過IDE添加?

+0

對不起Henk,我重寫了這個問題,所以你的評論不適用。我希望現在這個問題更加準確。 – 2009-06-26 02:35:09

回答

1

原來,Visual Studio需要Web.config作爲項目的一部分,沒有ifs,ands或buts。無論如何,這個MSDN article似乎暗示着它。

爲了解決這個問題,我不得不在根目錄下創建一個Web.config文件,刪除<配置文件中的所有內容,將其保留爲空並將其添加到項目中。然後在我的一個自定義構建目標中,備份空的Web.config並將生成的Web.config複製到根目錄。除此之外,我的自定義清理目標還原備份的Web.config。通過上述步驟,源代碼管理和Visual Studio都無視我的手感。

這種解決方法讓我畏縮,所以如果任何人有一個真正的解決方案,我會很樂意改變我選擇的答案。

相關問題