Html.RenderPartial与 Html.RenderAction的区别

Html.RenderPartial与Html.RenderAction这两个方法都是用来在界面上嵌入用户控件的。

    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","Controller", new with{.area = "Comm"});%>

 

 

总结:1、RenderPartial方法必须要Model有嵌套关系,而RenderAction可以分开写自己页面的Model,这样比较方便。

        2、使用这两种方式如果是弹出页面的话,提交到Control后将会关闭弹出页面,所以还是使用                                  http://fhuan123.iteye.com/admin/blogs/1012413这种方式比较好。

你可能感兴趣的:(html,ITeye)