C# 如何在MVC aspx页面中使用预处理器指令
我正在使用MinifyJS.tt,它是一个T4模板,可以自动缩小我的所有JS文件。 在我的aspx文件中,我引用了所有javascript文件 现在,我想添加一个条件(可能是编译器指令),以便在调试应用程序时使用原始JS文件,并在不进行调试的情况下运行应用程序时使用缩小的JS文件。 我尝试在aspx页面中使用#if,但似乎不起作用 我们可以在aspx页面中使用预处理器指令吗?C# 如何在MVC aspx页面中使用预处理器指令,c#,asp.net-mvc,c-preprocessor,C#,Asp.net Mvc,C Preprocessor,我正在使用MinifyJS.tt,它是一个T4模板,可以自动缩小我的所有JS文件。 在我的aspx文件中,我引用了所有javascript文件 现在,我想添加一个条件(可能是编译器指令),以便在调试应用程序时使用原始JS文件,并在不进行调试的情况下运行应用程序时使用缩小的JS文件。 我尝试在aspx页面中使用#if,但似乎不起作用 我们可以在aspx页面中使用预处理器指令吗? 有没有其他方法可以实现我的目标?您可以使用以下方法: if (!HttpContext.Current.IsDebugg
有没有其他方法可以实现我的目标?您可以使用以下方法:
if (!HttpContext.Current.IsDebuggingEnabled)
Script = OptimizeScript(Script);
此外……除了进一步讨论这个话题之外,还有一些评论
Wilco Bauwer评论说,该属性封装了web.config设置,不考虑页面级调试,如果您想
bool isDebuggingEnabled = Assembly.GetExecutingAssembly().IsDefined(typeof(DebuggableAttribute));
…这是实现它的孩子
Peter Bromberg(C#MVP)使用Global.asax.cs文件和应用程序启动事件中设置的静态全局应用程序标志提供了另一种解决方案
public static bool IsDebugMode = false;
protected void Application_Start(object sender, EventArgs e)
{
if (System.Diagnostics.Debugger.IsAttached) IsDebugMode = true;
取自我使用了Peter Bromberg的最后一种方法,并将其添加到AuthenticateRequest方法中。这有助于在应用程序运行时附加调试器。很高兴知道这对你有帮助:)