2009-04-23 192 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

相关问题