html.partial的作用,Html.RenderPartial("")与Html.Partial("")区别

这个HtmlHelper的扩展方法Partial,和HtmlHelper自带的 RenderPartial功能比较接近,

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

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

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

public static MvcHtmlString Partial(

this HtmlHelper htmlHelper,

string partialViewName

)

//RenderPartialExtensions.RenderPartial 方法 (HtmlHelper, String)

public static void RenderPartial(

this HtmlHelper htmlHelper,

string partialViewName

)

不过Partial是将视图内容直接生成一个字符串并返回,RenderPartial方法是直接输出至当前 HttpContext。因此它们在视图中的使用方式是不同的,

Partial输出到临时变量StringWriter ;RenderPartial输出到HtmlHelper.ViewContext.Writer上(即直接输出到Response)。

Html.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());

}

}

---------------------------------------------------------------------------------

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

{

htmlHelper.RenderPartialInternal(partialViewName, htmlHelper.ViewData, null, htmlHelper.ViewContext.Writer, ViewEngines.Engines);

}

在Razor视图中语法不一样:

@Html.Partial("PartialViewName")

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

Html.Partial和Html.RenderPartial和Html.RenderAction区别

1.Html.Partical 把View页或模板解析成字符串然后输出到渲染页面上 @Html.Partical("viewxxx") 2.Html.RenderPartical则 ...

Html.RenderPartial与Html.RenderAction区别(转)

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

重温MVC基础入门

重温MVC基础入门   简介 本文主要是作者回顾MVC基础的文章,整合个人认为基础且重点的信息,通过简单实践进行复习. 相关代码地址:https://github.com/OtherRuan/Revi ...

Partial RenderPartial Action RenderAction 区别和用法

区别: 1.Partial 与 RenderPartial 两个方法性质基本一样,只是把一个静态用户控件给嵌入进来. 2.Partial 回传一堆html代码,直接写进到页面上@Html.Partia ...

Asp.Net MVC3.0 Partial RenderPartial Action RenderAction 区别和用法

本人写的博文不多,专业知识不强,以下纯属于个人笔记.如有不对,还请各路大拿,拍砖指导,谢谢! 区别: 1.Partial 与 RenderPartial 两个方法性质基本一样,只是把一个静态用户控件给 ...

Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法【转发】

Html.partial和RenderPartial的用法与区别Html.partial和RenderPartial都是输出html片段,区别在于Partial是将视图内容直接生成一个字符串并返回(相 ...

Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法

Partial 和RenderPartial:这两个的性质都是一样, 只指把一个个View给镶入进来, 只是回传值有点不一样Partial 回传的一个Object (MvcHtmlString), 回 ...

随机推荐

洛谷 P3366 【模板】最小生成树 prim算法思路 我自己的实现

网上有很多prim算法  用邻接矩阵 加什么lowcost数组 我觉得不靠谱 毕竟邻接矩阵本身就不是存图的好方法 所以自己写了一个邻接表(边信息表)版本的  注意我还是用了优先队列  每次新加入一个点 ...

HTML基础(2)

常见标签 1.img标签 图片名  图片(单标签) alt属性 是图片名字,是给百度搜索引擎抓取使用 ...

clumsy 0.1 测试工具(延迟\掉包\节流\重发\乱序\篡改)

clumsy : http://jagt.github.io/clumsy/可以模拟以下几种场景: 延迟(Lag),把数据包缓存一段时间后再发出,这样能够模拟网络延迟的状况. 掉包(Drop),随机丢 ...

C# 天气预报

问题描述: 使用C#做一个简易的天气预报系统 问题解决: 主要使用类如下: WeatherLoc:包含常用的调用中国气象局天气情况接口 using System; using System.Colle ...

MySQL(11):存储引擎

1.存储引擎是什么?       MySQL中的数据用各种不同的技术存储在文件(或者内存)中.这些技术中的每一种技术都使用不同的存储机制.索引技巧.锁定水平并且最终提供广泛的不同的功能和能力.通过选择 ...

Samba的ADS域模式和RPC域模式

对于Samba服务器,有两种域安全模式,加入到Windows 2000或者Windows 2003域控制器(DC‘s)控制的域中: RPC 模式 RPC(远程过程调用)模式的域成员是"NT4 ...

getline函数

在我的印象中,getline函数常常出如今自己的视野里,模糊地记得它常常常使用来读取字符串 .可是又对它的參数不是非常了解,今天又用到了getline函数,如今来细细地总结一下: 首先要明确设计get ...

SQL查询语句分类

SQL查询语句有多种,下面总结下.首先先建三张表用于后面的实验 -- 学生表,记录学生信息 CREATE TABLE student( sno ), sname ), ssex ENUM('男','女 ...

Spark技术内幕之任务调度:从SparkContext开始

SparkContext是开发Spark应用的入口,它负责和整个集群的交互,包括创建RDD,accumulators and broadcast variables.理解Spark的架构,需要从这个入 ...

ResourceBundle介绍

介绍: ResourceBundle类主要作用是读取属性文件,读取属性文件时可以直接指定属性文件的名称(指定名称时不需要文件的后缀),也可以根据Locale所指定的区域码来选取指定的资源文件: Res ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值