문제

ASP.NET MVC 5 웹 역할 및 Azure SDK 2.3 타겟팅 4.5.1 프레임 워크가있는 클라우드 서비스가 있습니다. 웹 사이트는 현지에서 완벽하게 작동합니다. 그러나 Azure 클라우드 서비스에 배포 할 때 Classic Null 참조 오류가 있습니다.

객체 참조가 객체의 인스턴스로 설정되지 않았습니다. 예외 세부 정보 : system.nullReferenceException : 객체 참조가 개체의 인스턴스로 설정되지 않았습니다.

소스 오류 :

Line 9:      @Scripts.Render("~/bundles/jquery")
.

내 bundleconfig.cs는 간단합니다 :

    public static void RegisterBundles(BundleCollection bundles)
    {
        bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                     "~/Scripts/jquery-{version}.js",
                     "~/Scripts/knockout-{version}.js",
                     "~/Scripts/jquery.signalR-{version}.js",
                     "~/Scripts/modernizr-{version}.js"
                    ));
.

WebLole에 IntelliTrace 로그를 사용 하여이 오류를 볼 수 있습니다 :

파일 모니터링의 파일 이름이 잘못되었습니다. \ sitesRoot \ 0 \ 스크립트

인스턴스에서 원격으로 들어가면 폴더 스크립트가 해당 경로에 정확히 있음을 알 수 있습니다.

@ script.render를 정상적으로 제거하십시오. @ style.reder 동일한 페이지에서 작동합니다.

디버그 모드로 배포하려고 시도했으며 스테이징을 모두 릴리스 모드로 시도했습니다.

또한 web.config에서 변경하려고했습니다

compilation debug="true" and false
.

성공없이. 어떤 아이디어가 왜 일이 일어날 수 있습니까? 감사합니다

도움이 되었습니까?

해결책

테스트 일 이후에 문제가 웹 그레이스 패키지임을 발견했습니다.업데이트하면 신선한 새 프로젝트에서도 문제가 발생할 수 있습니다.이제 제거하고 이전 버전을 다시 설치하면 문제가 해결되었습니다.

다른 팁

jQuery 번들에서 jQuery를 제거하지만 모든 것을 제거하십시오.그런 다음 jQuery 종속 스크립트 (녹아웃, jquery.signalr & modernizr)에 대한 새 번들을 만들어 jQuery 번들 후에 렌더링하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top