2012-05-07 2 views
1

MVC3 응용 프로그램에서 Microsoft.ReportViewer.WebForms 컨트롤을 사용하고 있습니다. ReportViewer는 동일한 어셈블리에서 HttpHandler를 호출하여 javascript를 가져옵니다. 해당 처리기는 포함 된 리소스로 저장된 javascript를 반환합니다.타사 임베디드 리소스를 무시하십시오.

내 문제는 그것이 반환하는 javascript는 특정 시나리오에서 firefox의 런타임 오류를 일으키는 버그가 있다는 것입니다.

수정 된 자바 스크립트를 사용하기 위해 반환되는 임베디드 리소스를 재정의하고 싶습니다.

어떻게해야합니까? 나는 resx 파일을 살펴 봤지만 어떻게 파일의 이름을 지정해야하는지, 어디로 갈 것인지 등을 모른다.

답변

0

만약 당신이 버그를 알고 있다면, 당신은 그저 스스로 기능을 바꿀 수있다.

function iHaveBug() { alert('buggy'); } 

는 그런 다음에 와서 이상이로드 된 후 쓰기 :

iHaveBug = function() { alert('all better'); } 
+0

내 문제는 컨트롤이 UI를 렌더링하고, 동적 javascipt를 얻기 위해 핸들러를 호출 한 다음 반환 된 javascript 함수를 수명주기 내내 호출하는 것입니다. 내가 말할 수있는 것부터, 자바 스크립트를 요청할 때와 함수를 호출 할 때 사이에 일을 바꾸고 다른 모든 기능을 수행 할 수있는 곳이 없다. 파일을로드하지 않고 나중에 일부 사용자 이벤트가 호출을 트리거합니다. – jskentzos

0

당신은 하드는 소리없는 수정 된 자바 스크립트 파일과 어셈블리를 다시 작성해야합니다 . 이 게시물은 그것을하는 방법을 알려줍니다 : http://fortheloveofcode.wordpress.com/2007/09/24/change-resources-inside-assembly/

+0

사실 나는 그 같은 글을 사용하기 전에 그것을 시도했다. 내가 만난 문제는 MSFT에서 서명 한 어셈블리이므로 서명을 다시 작성하고 다시 서명 할 수 없다는 것입니다. (snremove 도구를 사용하여) 서명을 제거하고 디스 어셈블 한 다음 자바 스크립트를 변경하고 다시 어셈블 한 후 "Dispose()가 보안 중립에 있지만 보안 중요 유형에 포함 된"방법에 대한 런타임 오류가 발생하기 시작했습니다. 정확히 기억하지 마라.) 그 시점에서 나는 잘못된 트리를 짖어서 설정 파일을 통해 리소스 값을 무시하도록 지시를 변경했다고 생각했습니다. – jskentzos

관련 문제