我很想知道人们如何处理条件标记,特别是在发布和调试构建之间的母版页中。
这适用于处理连接的 js 和 css 文件的特定场景。我目前正在使用 YUI 压缩的 .Net 端口从大量单独的文件中生成单个 site.css 和 site.js。
我想到的一个想法是将 js 和 css 包含部分放在用户控件或面板集合中,并有条件地显示 <link>
和 <script>
基于程序集的调试或发布状态的标记。类似的东西:
#if DEBUG
pnlDebugIncludes.visible = true
#else
pnlReleaseIncludes.visible = true
#endif
面板在语义上真的不是很好 - 包装<script>
<div>
中的标签有点恶心;必须有更好的方法。我还认为像 <div>
这样的 block 级元素在 <head>
内将是无效的 html。
另一个想法是这可以使用 web.config 部分替换来处理,但我不确定我将如何去做。
最佳答案
我刚刚在我的 ASP.NET MVC 项目的母版页中尝试了这个,它成功了。如果在 DEBUG 模式下,我使用 jQuery 的开发版本,如果不在 DEBUG 模式下,我使用 jQuery 的缩小版本:
<head runat="server">
<% #if DEBUG %>
<script type="text/javascript" src="<%= Url.Content("~/Scripts/jquery.js") %>"></script>
<% #else %>
<script type="text/javascript" src="<%= Url.Content("~/Scripts/jquery.min.js") %>"></script>
<% #endif %>
</head>
关于asp.net - JS/CSS 包括部分替换、调试与发布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/895768/