2010-04-13 4 views
1

모든 My JS 파일을 자동으로 축소하는 T4 템플릿 인 MinifyJS.tt을 사용하고 있습니다. 내 aspx 파일에서 모든 자바 스크립트 파일을 참조하고 있습니다.MVC aspx 페이지에서 프리 프로세서 지시문을 사용하는 방법

이제 응용 프로그램을 디버깅 할 때 원본 JS 파일을 사용하고 디버그없이 응용 프로그램을 단순히 실행하면 축소 된 JS 파일을 사용하기 위해 조건 (어쩌면 컴파일러 지시문)을 추가하고 싶습니다. aspx 페이지에서 #if를 사용했지만 작동하지 않았습니다.

사전 처리기 지시문을 aspx 페이지에서 사용할 수 있습니까? 내 목표를 달성하기위한 다른 방법이 있습니까?

답변

2

는 다음을 사용할 수 있습니다

if (!HttpContext.Current.IsDebuggingEnabled) 
    Script = OptimizeScript(Script); 

은 또한 ..... 더 주제를 논의보다는 의견의 몇 가지가 있습니다.

이 윌코 Bauwer에서 그는이 속성은 Web.config의 설정을 캡슐화하고 계정에 페이지 레벨 디버깅을하지 않는 코멘트와 당신이 ....

bool isDebuggingEnabled = Assembly.GetExecutingAssembly().IsDefined(typeof(DebuggableAttribute)); 

원한다면 ....이 그것을 달성하는 애인입니다 !!

및 Peter Bromberg (C# MVP)는 Global_asax.cs 파일과 Application_Start 이벤트에 설정된 정적 전역 응용 프로그램 플래그를 사용하는 다른 솔루션을 제공합니다.

public static bool IsDebugMode = false; 
protected void Application_Start(object sender, EventArgs e) 
{ 
    if (System.Diagnostics.Debugger.IsAttached) IsDebugMode = true; 

내가 피터 브롬 버그의 마지막 접근 방식을 사용하고 대해 AuthenticateRequest 방법에 추가 Steves blog

+0

에서 촬영. 이 기능은 응용 프로그램이 실행 중일 때 디버거를 연결할 때 도움이됩니다. 감사합니다. – Zuber

+0

도움이 되었으면 좋았습니다. :) – Bipul

관련 문제