2013-02-18 2 views
16

호출 뷰에서 내 부분 뷰에 문자열을 전달하고 싶습니다. 부분 뷰가 렌더링 된 뷰에 따라이 문자열이 달라집니다. 이런 식으로 뭔가 :MVC4의 부분 뷰에 문자열 전달

@{ Html.RenderPartial("PartialViews/_BreadcrumbsPartial", "New Item");} 

아니면이 매개 변수 것을 표시하지 않은 이후

@{ Html.RenderPartial("PartialViews/_BreadcrumbsPartial", Model.Name);} 

가 어떻게, 부분 뷰 내에서이 두 번째 매개 변수를 액세스 할 수 있습니까? 가능한 경우 전체 모델을 전달하지 않으려 고하고 해당 문자열을 직접 참조하십시오.

답변

32

귀하의 최고 장소에서, 문자열로

예를 결합해야 부분이 :

@model string 

, 당신의 부분에 값에 액세스 문자열 PARAM 대신에 @Model를 사용하려면

+0

를 참조하십시오. 나는 당신이 내 부분의 꼭대기에있는 것과 몸에있는 @string을 정확히 추가했지만 식별자를 찾고 있습니다. – RobVious

+0

@RobVious, 답변을 업데이트했습니다. 기본적으로 @ Model을 문자열로 사용하십시오. –

+0

정말 대단합니다. 데이브 감사합니다. – RobVious

0

당신은 할 수 후속보기에서 액세스 할 수있는 TempData (또는 가능하게는 ViewData)을 사용하십시오. 그러나 쿼리 문자열을 통해 변수를 직접 전달할 수도 있다고 생각합니다.

나는이 시도하지만 내 partialView의 몸에서 그것을 참조하는 방법을 모를뿐만 아니라이 질문에 asp.net mvc parameter from page to a partial view

+1

ViewData를 사용하고 싶지 않습니다. 데이터는 이미 내 View의 ViewModel에서 사용할 수 있습니다. – RobVious