2016-12-14 4 views
0

좋은 방법이 있는지 궁금합니다. 현재 일부 임시 데이터를 내 MVC 응용 프로그램의 동일한보기 페이지에서 호출되는 여러 부분보기로 보내려고합니다.보기 MVC에서 여러 부분 뷰로 임시 데이터 보내기

현재 TempData를 사용하여이 작업을 시도하고 있지만 부분 요청이 하나만 있기 때문에 이해가 제한적이라는 것을 알 수 있습니다. 내 부분 데이터 모두를 걸러 내기 위해 어떤 방법을 사용해야합니까?

홈페이지보기 페이지 :

@{ 
    ViewBag.Title = "Main View Page"; 

    TempData["ReturnUrl"] = Request.Url.OriginalString.ToString(); 
} 

@Html.Partial("_StatusTable1") 
@Html.Partial("_StatusTable2") 
@Html.Partial("_StatusTable3") 
@Html.Partial("_StatusTable4") 
@Html.Partial("_StatusTable5") 

부분보기 예 : 사전에

@{ 
    var temp = TempData["ReturnUrl"]; // temp is null on all partials except the first 
} 

// Partial View Code ... 

감사합니다. 그

@Html.Partial("_SomePartial", TempData["ReturnUrl"]) 

처럼 기본보기 페이지 통화에서

+0

그냥 ViewBag를 사용할 수 있습니다. – Dismissile

+0

@Dismissile Will Not ViewBag 동일한 작업을 partialt 중 하나에 사용하면됩니다. 그렇습니까? – tokyo0709

+1

당신은'TempData'를 사용할 필요가없고 강력하게 유형화 된 뷰 모델을 선호해야합니다. 'TempData'는 리디렉션을 위해 존재합니다. 그래서 첫 번째 액세스 이후에 지워집니다. –

답변

0

partiel보기는 난이 일 것이라고 생각한다.

@Html.Partial("_SomePartial", TempData) 
+1

작동하지 않을 것이다. TempData에 한 번 액세스하면 곧 사라집니다. – Dismissile

+0

그런 다음이를 변수에 할당하고 뷰에 전달 하시겠습니까? – knaos