博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Html.RenderPartial和Html.Partial在Razor视图中的区别
阅读量:6674 次
发布时间:2019-06-25

本文共 1351 字,大约阅读时间需要 4 分钟。

两者都可以输出一个Partial视图;其区别如下:

1. Partial有返回值(MvcHtmlString);RenderPartial没有返回值(Void)。

ET27055201203210800322.gif定义

1 //PartialExtensions.Partial 方法 (HtmlHelper, String)

2 public static MvcHtmlString Partial(
3 this HtmlHelper htmlHelper,
4 string partialViewName
5 )
6
7 //RenderPartialExtensions.RenderPartial 方法 (HtmlHelper, String)
8 public static void RenderPartial(
9 this HtmlHelper htmlHelper,
10 string partialViewName
11 )

2. Partial输出到临时变量 ;RenderPartial输出到..上(即直接输出到Response)。

ET27055201203210800322.gifHtml.Partial内部实现

public static MvcHtmlString Partial(this HtmlHelper htmlHelper, string partialViewName)

{
return htmlHelper.Partial(partialViewName, null, htmlHelper.ViewData);
}
public static MvcHtmlString Partial(this HtmlHelper htmlHelper, string partialViewName, object model, ViewDataDictionary viewData)
{
using (StringWriter writer = new StringWriter(CultureInfo.CurrentCulture))
    {
        htmlHelper.RenderPartialInternal(partialViewName, viewData, model, writer, ViewEngines.Engines);
return MvcHtmlString.Create(writer.ToString());
    }
}

ET27055201203210800322.gifHtml.RenderPartial内部实现

1 public static void RenderPartial(this HtmlHelper htmlHelper, string partialViewName)

2 {
3     htmlHelper.RenderPartialInternal(partialViewName, htmlHelper.ViewData, null, htmlHelper.ViewContext.Writer, ViewEngines.Engines);
4 }

3. 在Razor视图中语法不一样:

ET27055201203210800322.gif语法

1 @Html.Partial("PartialViewName")

2
3 @{ Html.RenderPartial("PartialViewName"); }

转载地址:http://nprxo.baihongyu.com/

你可能感兴趣的文章
CentOS7 搭建 zabbix-server 3.0.10
查看>>
Android四大基本组件介绍与生命周期
查看>>
Essential Grid for WPF
查看>>
python实现一个简单的dnspod api
查看>>
我是在工作?学习?混日子?
查看>>
内存管理初级基础--代码
查看>>
关于Android Force Close 出现的原因 以及解决方法
查看>>
linux tar、find命令运维实践
查看>>
查询oracle数据库编码
查看>>
分发系统-expect-批量同步文件、批量执行命令
查看>>
activiti相关配置
查看>>
poj(1458)(最长公共子序列)
查看>>
virtualbox增加硬盘
查看>>
Exchange 2010邮件收发信大小限制
查看>>
js闭包浅了解
查看>>
解决"win8"无法使用内置管理员账户打开
查看>>
ProxmoxVE 之 创建win10基础镜像模板
查看>>
yum
查看>>
JQuery 级联(ul仿select级联)
查看>>
Delphi 2009 中 TStrings 与 TStream 的增强
查看>>