dhl:MVC 中Html.RenderPartial与Html.RenderAction 和 Html.Partial 区别
总结:
这3个HtmlHelper的扩展方法
Html.Partial:是将视图内容直接生成一个字符串并返回,
Html.RenderPartial方法是直接输出至当前HttpContext,
而Html.RenderAction还调用一下Action。重新執行一次Controller → Model → View的順序。
因此它们在视图中的使用方式是不同的:
<%Html.RenderPartial("MyPartialView");%>
<%Html.RenderAction("MyPartialView");%>
<%=Html.Partial("MyPartialView")%> (相当于一个字符串)
注意:RenderPartial以<%开头,末尾有分号。而Partial,RenderAction以<%=开头,末尾没有分号。这里RenderPartial,RenderAction 方法不是返回一个字符串,而是直接输出内容到调用视图模板的输出流中。 方法后使用分号,否则会导致编译器错误。这是因为<% %>代码块是一串代码语句,在C#代码中,需要通过分号标识语句结束。
以下摘自网络:
或
注意:用第一种方法时,用户控件必须放在调用者同一目录下,也可以放在View/Shared中。
Controller:----用户控件所在Controller