2009-04-23 190 views
0

我的環境是Visual Studio 2005.我的具體問題是我想要定義TRACE在ASP.NET Web部署項目中編譯時間DEFINEs

由於在web.config的system.codedom元素中定義了它,因此我有一個網站項目,它在用完ASP.NET開發服務器時發送跟蹤消息。

當我部署到IIS時,我通過Web部署項目來完成此任務。所以這個站點是預編譯的。自然,這些條目在編譯的網站上沒有任何用處。

我的問題是如何在web部署項目中定義TRACE

回答

1

就我所知,Visual Studio IDE不允許您在Web部署項目中設置編譯時間常量。但是,由於.wdproj文件只是一個msbuild文件,因此您可以使用文本編輯器對其進行編輯。您需要在部分中添加一個元素,如所提供鏈接中的屏幕截圖所示。

我不能改變鏈接的圖像,因爲新用戶顯然無法添加圖片: Annotated screenshot of .wdproj in a text editor http://img140.imageshack.us/img140/1719/deploymentproject.png

0

沒有相當於#定義在C#。這就是說,這聽起來像你想要使用條件跟蹤,這很容易完成。如果您在整個項目中都有診斷代碼但想定義它,請使用內置的跟蹤功能,例如

System.Diagnostics.Trace.WriteLine(「Some debug output」);

然後,在你的webconfig,您可以開啓/關閉使用

<configuration> 
<system.web> 
    <trace enabled="true" requestLimit="40" localOnly="false"/> 
</system.web> 
</configuration> 

更多信息here

+0

Serapth, 感謝您的回覆進行配置。不過,我想我的問題並不清楚。我知道我可以打開web.config中的ASP.NET跟蹤並獲取該鏈接中的信息。但是,我想要的是Trace.Trace(信息|警告|錯誤)(消息)發送到跟蹤偵聽器。這需要定義TRACE。另外,#define在C#中工作得很好。試一試。 – 2009-05-07 18:18:35

相關問題