当一个特定的列表页面没有数据时,我试图使用共享的局部视图进行渲染。我想使用ViewData将信息从页面传递到我的列表控件,然后使用ViewData值有条件地呈现NoData局部视图。
我希望能够在视图标记中指定它们,而不是在控制器操作中指定它们,但是当我在视图中添加它们时,似乎不会继承到子部分视图(如Nodata局部视图) 。但是,在控制器操作的ViewData值中指定它们可以正常工作,数据一直可用......
有谁知道它为什么会这样?
答案 0 :(得分:2)
渲染局部时,您也可以传递ViewData。
<% Html.RenderPartial("NoData", ViewData); %>
答案 1 :(得分:0)
<%Html.RenderPartial("partialViewName", "viewData", "model"); %>
最佳做法是在控制器内部做出决定,如果你有一个在视图中做出决定的场景,将它们分开并在控制器内有条件地调用它们