2014-12-06 78 views
0

我想要做的是發送ViewBag從第一個RenderPage()到其他RenderPage()如何將ViewBag發送到其他RenderPage使用其他RenderPage

_Layout.cshtml我有3個渲染所謂:

@RenderPage("FirstRenderPage") 
@RenderBody() //Never mind this one 
@RenderPage("SecondRenderPage") 

FirstRenderPage我有一個ViewBag

@ViewBag.Messages = "Hello, World" 

,並在SecondRenderPage我需要顯示的消息:

<h1>@ViewBag.Messages</h1> 

但問題是SecondRenderpage dint收到消息。

+0

**不確定** ..我不認爲'ViewBag'會在這裏工作..您可以嘗試使用'TempData'來代替。 – 2014-12-06 04:09:45

+0

@Kartikeya我可以做到這一點,但問題是,如果我去那個解決方案,它會給我的項目帶來另一個問題。 – 2014-12-06 04:41:35

回答

1

@RenderPage()有一個可選的第二個參數params object[] data,可用於將其他數據(在您的案例ViewBag.Mesages)傳遞給視圖。 Refer documentation

+0

是的,但'ViewBag.Messages'在第一個渲染頁面內?所以我怎麼能像這樣'@RenderPage(「SecondRenderPage」,ViewBag.Messages)''添加參數? – 2014-12-06 04:37:00

+0

對不起,誤解你分配ViewBag屬性的地方。由於你使用'@ RenderPage' AFAIK,你不能訪問'ViewDataDictionary'頁面。您需要在主視圖中分配值。 – 2014-12-06 04:58:42