有什么简单的方法可以判断当前代码中编译标记的哪个调试属性?
我为什么要这么做?因此,我可以在javascript/css的小型化/非小型化版本之间切换。以下是我尝试过的(但没有成功):
public function GetLink(byval url As String) As String
Static isDebugEnabled As Nullable(Of Boolean)
If isDebugEnabled Is Nothing Then
isDebugEnabled = New System.Web.Configuration.CompilationSection().Debug
End If
If isDebugEnabled.Value OrElse Regex.IsMatch(url,"\.min\.",RegexOptions.IgnoreCase) Then
return url
Else
Dim cssOrJsFileName = Regex.Match(url,"/[a-z]+\.(css|js)",RegexOptions.IgnoreCase).
ToString().
Replace("/",String.Empty).
Replace(".js",String.Empty).
Replace(".css",String.Empty)
return url.Replace(cssOrJsFileName,cssOrJsFileName + ".min")
End If
End Function
<link href="<%: getlink("/includes/styles/csssharedbundle.css") %>" rel="stylesheet" />
<link href="<%: getlink("/includes/styles/csssite.css") %>" rel="stylesheet" />不管发生什么情况,上面的代码总是返回缩小的文件。
发布于 2014-06-17 14:27:40
不是的。或者至少,这不是最好的方法。
使用预处理指令来完成这一任务。
#if DEBUG
//return non-minified
#else
//return minified
#endif我相信他们是可用的,有着与你的月亮语言相同的语法。请查阅链接以确定。
https://stackoverflow.com/questions/24266339
复制相似问题