ASP.NET Web 部署项目中的编译时间定义

发布于 2024-07-17 04:43:04 字数 301 浏览 6 评论 0原文

我的环境是 Visual Studio 2005。我的具体问题是我想定义 TRACE

我有一个网站项目,由于在 web.config 的 system.codedom 元素中进行了定义,因此当 ASP.NET 开发服务器运行完毕时,该项目会发送跟踪消息。

当我部署到 IIS 时,我通过 Web 部署项目进行部署。 所以该网站是预编译的。 当然,这些条目在编译的网站上没有任何作用。

我的问题是如何在 Web 部署项目中定义 TRACE

My environment is Visual Studio 2005. My specific problem is that I want to define TRACE.

I have a Web Site Project that send trace messages when run out of the ASP.NET Development Server thanks to defining it in the system.codedom element of the web.config.

When I deploy to IIS, I do so via a web deployment project. So the site is precompiled. Naturally, these entries serve no purpose on a compiled website.

My question is how do I define TRACE in the web deployment project?

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

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

发布评论

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

评论(2

娜些时光,永不杰束 2024-07-24 04:43:05

据我所知,Visual Studio IDE 不允许您在 Web 部署项目中设置编译时间常量。 但是,由于 .wdproj 文件只是一个 msbuild 文件,因此您可以使用文本编辑器对其进行编辑。 您需要将一个元素添加到这些部分,如提供的链接中的屏幕截图所示。

我无法更改图像的链接,因为新用户显然无法添加图像:
文本编辑器中带注释的 .wdproj 屏幕截图 http://img140.imageshack.us/img140 /1719/deploymentproject.png

The visual Studio IDE does not allow you to set compile time constants in web deployment projects as far as I can tell. However, since a .wdproj file is just an msbuild file, you can edit it with a text editor. You need to add a element to the sections as illustrated in the screen shot in the provided link.

I cannot change the link to an image since new users apparently can't add images:
Annotated screenshot of .wdproj in a text editor http://img140.imageshack.us/img140/1719/deploymentproject.png

腻橙味 2024-07-24 04:43:05

C# 中没有与#defines 等效的东西。 也就是说,听起来您想使用条件跟踪,这很容易完成。 如果您的项目中有诊断代码但想要定义它,请使用内置的跟踪功能,例如

System.Diagnostics.Trace.WriteLine("Some debug output");

然后,在您的 webconfig 中,您可以使用

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

更多信息 这里

There is no equivalent to #defines in C#. That said, it sounds like you want to use conditional tracing, which is easily accomplished. If you have diagnostic code throughout your project but want to define it, use the built in trace functionality, for example

System.Diagnostics.Trace.WriteLine("Some debug output");

Then, in your webconfig, you can configure it on/off using

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

More info here

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