2012-11-29 2 views
2

RenderAction 그냥 잘 작동되지만 곧 내가 컴파일 오류가 얻을 경우 문을 서라운드로 : 나는 문법을 발견 할 수면도기 구문 문제

@if (@Model.IsConfigurationAllow) 
{ 
    @{ Html.RenderAction("Save"); } // CS1501: No overload for method 'Write' takes 0 arguments 
} 

보다 일반적인 질문 면도기보기 구문 은요?

+0

: http://msdn.microsoft.com/en-us/VS2010TrainingCourse_ASPNETMVC3Razor –

+0

면도기 2 구문 : http://stackoverflow.com/a/10112130/30007 –

+0

제거'@ {}' 블록 코드. 'Html.RenderAction ("Save");'충분하다. – jwaliszko

답변

3

Html.RenderAction은 HTML을 응답에 직접 렌더링하므로 코드 블록에서 호출 할 수 없습니다.

Html.Action은 결과가있는 문자열을 반환합니다.

(자세한 인터넷 검색으로 바로 찾을 수 있습니다) http://haacked.com/archive/2009/11/17/aspnetmvc2-render-action.aspx

+0

"HTML을 응답에 직접 렌더링하는 이유"가 달라집니다. – mathk

+0

Ok @ {exp}가 WriteOutput (exp)로 컴파일되는 것을 봅니다 ... – mathk

1

이 시도 했습니까? 면도기 구문을 보려면

@if (@Model.IsConfigurationAllow) 
{ 
    <text>@{ Html.RenderAction("Save"); }</text> 
}