ASP.NET MVC 中Html.RenderPartial,Html.RenderAction,Html.Partial的区别?

 

Html.RenderPartial是直接将用户控件嵌入到界面上:
    
<%Html.RenderPartial("LogOnUserControl");%>

    
<%Html.RenderPartial("~/Areas/Comm/Views/Shared/LogOnUserControl.ascx");%>
注意:用这种方法时,用户控件必须放在调用者同一目录下,也可以放在View
/Shared中。

 Html.RenderAction则通过Controller中的Action来调用用户控件
Controller:
----用户控件所在Controller
    
public ActionResult UserControl()
    {
        
return PartialView();
    }
View:
----调用用户控件的View
    
<%Html.RenderAction("UserControl"new {id = Request.QueryString["id"]});%>

Html.Partial是将视图内容直接生成一个字符串并返回

<%=Html.Partial("MyPartialView",Model)%>

Controller层:

return PartialView("ProductListMode", model);    //返回用户控件,局部视图

return View(model);     //Action的响应,最常见的做法返回一个视图

 

posted @ 2011-07-01 09:49  shizhi57  阅读(3185)  评论(1编辑  收藏  举报