2014-06-11 3 views
3

예,이 질문은 이미 여러 번 요청되었습니다.'blahblah.aspx'파일이 미리 컴파일되지 않았으므로 요청할 수 없습니다.

그러나 이것은 완전히 동일하지 않습니다. 사실 나는 오류 메시지가 정확하다고 생각합니다!

일반적으로 게시 된 ASPX 파일을 볼 때 "이것은 미리 컴파일 도구에서 생성 된 마커 파일이므로 삭제하면 안됩니다!"라는 메시지 만 표시됩니다.

필자의 경우 빌드하고 게시 한 후에 게시 된 페이지를 볼 때 전체 소스 코드를 볼 수 있습니다.

새로 설치 한 VS2012 사본을 사용하고 있습니다. 분명히 옳지 않은 부분이 있습니다.

제안 사항?

감사합니다 :) 일반적으로

+0

사이트를 게시 한 방법을 말씀해 주시겠습니까? – TechGirl

+0

일반적인 방법 - Visual Studio를 열고 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 "게시", 프로필 등을 선택하십시오. – CompanyDroneFromSector7G

+0

ddl이 추가되지 않았거나 webconfig에있는 내용이 누락 된이 파일에 추가 한 참조입니다. 그냥 생각 나게하다. – TechGirl

답변

5

게시 된 ASPX 파일을 볼 때, 당신은 그냥보고는 "이 사전 컴파일 도구에 의해 생성 된 마커 파일, 삭제해서는 안된다!".

글쎄, 실제로는 "보통"아니야 - 너는 을 명시 적으로으로 설정해야한다.

일반적인 방법 - 개방 비주얼 스튜디오를 마우스 오른쪽 단추로 클릭 한 프로젝트는, "게시"를 선택 프로필

프로파일 설정을 확인하거나 필요한 경우 새 프로파일을 작성하고 (재) 설정 무엇을 네가 원해. 당신이 미리 컴파일 "갱신"할 수 없거나 설정

스크린 샷 등

아래에 도시 된 바와 같이, "정상", (완전히 당신이 위에서 언급 된 메모를 볼 경우, 컴파일) (기본값) 설정은 "업데이트 가능"입니다. 선택을 취소 == 모든 것이 컴파일 -도 (CS/VB) HTML, 영문 등 (파일에서 볼 수없는 소스)

publish profile settings

제 H ...

+0

에 주목하세요! 나는 여전히 오류가 발생하므로 참조 문제 일 수 있습니다. 그걸로 작동합니다 ... – CompanyDroneFromSector7G

8

나는이 문제를 해결하기 위해 애 쓰고있다 지난 며칠 동안 문제가 발생했습니다. 최소한 내 경우에는 오류 메시지가 완전히 오도 된 데다가 미리 컴파일 된 웹 사이트와 관련이 없습니다. 혼란에 가중되는 여러 가지 답변을 제공하는 많은 기사 또는 게시물이 있습니다. 개인적으로이 오류는 주로 누락 된 참조 또는 잘못된 버전으로 인해 발생한다고 생각합니다. 가능한 빨리 문제를 해결하기 위해이를 배제하거나 누락되거나 잘못된 참조를 수정해야합니다.

이렇게하려면 "어셈블리 바인딩 로그 뷰어"라는 도구를 사용해야합니다. 이 도구는 누락 된 참조 또는 잘못된 버전을 알려줍니다. 누락 된/일치하지 않는 참조가있는 경우 계속 진행하고 수정하십시오. 그렇지 않으면 32 비트 또는 권한 인 응용 프로그램 풀을 확인하는 것과 같은 다른 마술 트릭을 수행해야합니다.

단계 : \ fuslog C : \ fuslog \ 로그

  • 복사 조립 서버에에서 로그 뷰어를 바인딩 C 서버에서

    1. 은 다음 폴더

      C를 만들 : \ fuslog :

      같은 위치에서 프로그램을 찾을 수 있습니다.

      C : \ 프로그램 파일 당신은 "프로그램 파일"대신 "프로그램 파일 (86)" 볼 필요가 있습니다

      fuslogvw.exe 마이크로 소프트의 SDK \ WINDOWS \ v7.0A \ 빈 \ \ (86) 또는 "로그 디스크에 실패 바인딩"확인 "... 설정"대신 "v7.0A"

    2. 가에 서버에

    3. 클릭 fuslogvw.exe 실행의 다른 vesions에

    4. 이다 보면 체크 됨

    5. ,451,515,
    6. 확인하여 상자에 다음과 같은 사용자 지정 로그 경로를 사용하도록 설정하고 입력 : C : OK

    7. 클릭 \ fuslog \ 로그

    8. 재활용/신선한 바인딩을 적용하기 위해 응용 프로그램 풀을 다시

    9. 새로 고침을 클릭하십시오. 이제 여기에서 실패한 바인딩을 볼 수 있습니다.

    10. 정확한 바인딩을 찾는 더 좋은 방법은 c : \ fuslog \ logs \ Default로 이동하는 것입니다. 여기서 정확한 바인딩 오류를 찾을 수 있습니다. 일부는 관련성이 없으므로 시행 착오를 거쳐 중요한 것을 찾아야합니다. 내 웹 사이트에 다음 항목을 추가하여 문제를 해결

    System.Web.Mvc, Version=4.0.0.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35 
    
    은 web.config 반면 :

    <configuration> 
        ... 
        <runtime> 
         ... 
         <!-- Added this entry to fix the issue --> 
         <dependentAssembly> 
          <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" /> 
          <bindingRedirect oldVersion="0.0.0.0-4.0.0.1" newVersion="4.0.0.0" /> 
         </dependentAssembly> 
         ... 
        </runtime> 
        ... 
    </configuration> 
    

    내가이 신속하게 문제를 해결하기 위해 다른 사람을 도움이되기를 바랍니다 광산은 다음과 실패했다 .

  • +0

    1. 내가 언급 한 폴더에 fuslogvw.exe를 복사 할 때 오류가 발생하지 않고 오류가 발생하지 않습니다. 2. 'bin'에서 실행하면 폴더에서 설정 아래의 모든 옵션이 회색으로 표시됩니다. 왜이게 될지 아십니까? – Bassie

    +0

    옵션이 회색으로 표시된 경우 관리자로 실행해야합니다. – cwap

    2

    마지막으로, 문제가 발견되었습니다. 나 같은 MVC 프레임 워크를 사용하는 경우 MVC 버전을 업데이트하십시오. 제 경우에는 MVC 4.0.0.0을 4.0.0.1로 변경하고 모든 프로젝트 참조의 "로컬 복사본"속성을 "True"로 확인했습니다. 그 후 내 문제가 해결되었습니다. 모든 설정 파일 (4.0.0.0-> 4.0.0.1)에서 MVC 버전을 확인하십시오

    그리고 asp 컴파일러 경고 메시지를주의하십시오.

    +0

    동일한 문제가 발생하면 컴파일 된 CSHTML 파일이로드되지 않고''~ '(마음에 -4.0.0.1). – Iztoksson