2010-03-09 70 views
3

我想这样做是否有可能为ASP.NET评论提供条件编译?

<# if ANYPREPROCESSORCONSTANT #> 
<%-- 
<# endif #> 

是否有可能(我希望有条件地放一个asp.net评论,我不想conditionaly调用一个方法)?

更新:似乎是不可能的最后,没有人能给出任何正确的答案:)

回答

2

你可以这样做:

<% #if DEBUG %> 
<div id="debug"></div> 
<% #else %> 
<div id="release"></div> 
<% #endif %> 

虽然它不是在我看来很可读......只使用它如果需要的话!

+0

感谢嗨,但我真的不希望调试,我想包括ASP.NET注释CONDITIONALY(它可以是任何其他常量作为调试) – user310291 2010-03-09 07:22:08

+0

我想根据预处理常量的值在DESIGN TIME中排除一些ASP.NET代码。 – user310291 2010-03-09 07:23:46

1

是的,您可以在web.config中为Web站点项目定义编译器常量,如下所示。请注意,注释必须完全包含在#if ...#end if构造中。否则,你正在评论#end if。

<system.codedom> 
    <compilers> 
     <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider,System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4"> 
      <providerOption name="CompilerVersion" value="v3.5"/> 
      <providerOption name="WarnAsError" value="false"/> 
     </compiler> 
     <compiler compilerOptions="/d:DEBUG,TRACE,DEBUG_SURVEYCODE,GPT,TRACE_ARGS,TRACE_ARGS_OUTPUT,TRACE_FILES,DEBUG_USER" language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/> 
    </compilers> 
</system.codedom> 

<% #if TRACE_ARGS_OUTPUT %> 
<!-- this traces output comment --> 
<% #end if %> 
<% #if TRACE_ARGS_OUTPUT = FALSE %> 
<!-- this does not output comment --> 
<% #end if %> 
+0

谢谢,不知道,这将是有益的(虽然这不是我的问题关于asp.net评论的直接答案)。 – user310291 2010-03-09 12:30:41

0

既然你说设计时,我假设你指的是Server Control Design Support

你将不得不处理在后面设计时代码条件...

#if SOMEDEFINE 
DoSomething(); 

#ENDIF

+0

我不想调用函数,我只想把asp评论conditionnaly :) – user310291 2010-03-09 12:29:33

相关问题