代码之家  ›  专栏  ›  技术社区  ›  Jeremy

在aspx页面中使用if DEBUG条件编译语句

  •  3
  • Jeremy  · 技术社区  · 15 年前

    我正试图在aspx页面中执行类似的操作:

    <head runat="server">
        <% #if DEBUG %>
            <script src="jquery-1.3.2.js" type="text/javascript"></script>
        <% #else  %>
            <script src="jquery-1.3.2.min.js" type="text/javascript"></script>
        <% #endif %>
    </head>
    

    我得到一个错误“预处理器指令必须显示为行上的第一个非空白字符”。我该怎么做?

    2 回复  |  直到 12 年前
        1
  •  6
  •   Zhaph - Ben Duguid    15 年前
    <head runat="server">
      <% 
        #if DEBUG
      %>
        <script src="jquery-1.3.2.js" type="text/javascript"></script>
      <%
        #else
      %>
        <script src="jquery-1.3.2.min.js" type="text/javascript"></script>
      <%
        #endif
      %>
    </head>
    

    对我有用-请注意,这是基于 debug 中的属性 <compilation> web.config的元素。

    编辑以回应评论

    啊,那么你也在通过后面的代码向头部添加控件?那么您可能还需要从后面的代码中动态地添加这个。

    如果您愿意始终提供缩小版,但希望在Visual Studio中使用IntelliSense,则应确保已安装修补程序以启用此功能:

    VS2008 SP1 Hotfix to Support "-vsdoc.js" IntelliSense Doc Files

    这将使您能够命名您的非精简版本jquery-1.3.2.min-vsdoc.js,并让VS在您构建页面时读取该版本。

        2
  •  1
  •   mysticdotnet    9 年前

    这对我有效:

    <head runat="server">
        <asp:PlaceHolder runat="server">
        <% 
    #if !DEBUG 
        %>
        <meta http-equiv="X-UA-Compatible" content="IE=9" />
        <% 
    #else 
        %>
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <% 
    #endif 
        %>
        </asp:PlaceHolder>
    </head>