2011-12-17 5 views
9

글쎄, ASP.NET MVC 팀이 asp.net MVC 4에 대한 개발자 미리보기에서 상당히 중요한 버그를 릴리스했다고 생각합니다. 아니면 바보 같은 짓을하고 있습니다 ... 여기에 재현 할 문제와 단계가 있습니다.ASP.NET MVC 4 Dev 미리보기 섹션의 면도기 오류

  1. 새로운 MVC 4 모바일 애플리케이션
  2. 레이아웃의 새 섹션을 만듭니다 (예를. @RenderSection ("머리", false)를) 컨트롤러 액션에
  3. 그냥 ViewBag에 메시지를 던져
  4. 다음 기본 레이아웃을 사용하는보기에서 아래 코드를 추가하십시오.
@section head { 
    $(function() { 
     var newVariableName = "@(ViewBag.Message)"; 
    }); 
} 

당신은 면도기 파서 실제로 섹션 대신 섹션의 끝 중괄호 중괄호를 종료로드 DOM에 대한 jQuery 완료되었음을 생각하는 것을 알 수 있습니다. 나는 asp.net MVC 3 응용 프로그램에서 똑같은 코드를 시도했지만 문제없이 작동했다.

ASP.NET MVC 4 개발자 미리보기에서이 버그를 발견 한 사람이 있습니까?

+0

그래, 나! 당신은 출력으로 자바 스크립트 코드가 완성되지 않았습니까? – tugberk

+0

네, 기본적으로 종료 된 것으로 간주합니다. 이 개발자 프리뷰는 어리석은 버그로 어떻게 공개 되었습니까? 또한, 어떻게 아무도 그것에 대해 뭔가를 게시하지 않았습니다! –

+0

실제로 이것을 게시하려고 시도했지만 항상 문제가 내 코드에 있다고 생각했습니다 (자바 스크립트 코드는 다소 복잡했습니다). 제 말은 개발자 미리보기라는 것입니다. 많은 것을 기대할 수는 없습니다. 또한 라이브 라이센스가 없습니다. 너도 알지? dev. 미리보기는 컴퓨터를 폭파시킵니다. MSFT가 아닌 사용자에게 있습니다. – tugberk

답변

6

이 문제를 해결하려면 Java 스크립트 주위에 < 텍스트> 블록 </텍스트>를 사용하는 것이 좋습니다. ASP.NET MVC 팀이이 버그를 해결할 때까지는 다음과 같이 보일 수 있습니다.

@{ 
<text> 
    $(function() 
    { 
     var newVariableName = "@(ViewBag.Message)"; 
    }); 
</text> 
} 
0

위에서 언급 한 바와 같이, 당신의 cshtml 파일이 시도 ...

@section head { 
@{ 
    function JSMeth1() 
    { 
     // doing your stuff, razor parser wont suck 
    } 
}} 
관련 문제