在代码MVC Razor中渲染部分视图

Pau*_*aul 19 views partial asp.net-mvc-3

我正在使用MVC 3 Razor为实践目的制作一个简单的CMS,我的想法是我创建了一些局部视图.

我想要进行数据库查找,并看到3个部分视图需要渲染到页面.

我该怎么做?在WebForms中,您调用LoadControl(ControlURL),但我在这里看不到等价物.

它会成为客户端吗?

编辑 - 我更想从模型中获取视图名称,然后渲染该视图而不是事先知道视图的名称.因此,页面可能具有名为Foo的视图或名为Bar的视图.该模型在运行时将告诉控制器操作呈现哪个视图.

Bui*_*ted 50

有两种方法可用于呈现"控件".

@Html.Partial("ViewName")
@{ Html.RenderPartial("ViewName"); }
Run Code Online (Sandbox Code Playgroud)

您还可以渲染其他操作.

@Html.Action("ActionName", "Controller", new { Values = "yourvalues" })
@{ Html.RenderAction("ActionName", "Controller", new { Values = "yourvalues" }); }
Run Code Online (Sandbox Code Playgroud)

请注意,每个第二个被@{ }这个包围,因为它们不返回字符串,而是直接呈现给流.


Fel*_*lix 1

另外,请考虑@Html.Action()代替部分视图