asp.net MVC3 Helpers Partial RenderPartial Action RenderAction

简介: partial RenderPartial html.Partial 有返回值(MvcHtmlString)  而RenderPartial 则没有任何的返回值(void) partial输出到临时变量StringWriter  而renderPartial则是直接输出到HtmlHelper.

partial

RenderPartial

html.Partial 有返回值(MvcHtmlString)  而RenderPartial 则没有任何的返回值(void)

partial输出到临时变量StringWriter  而renderPartial则是直接输出到HtmlHelper.ViewContext.Writer(即直接输出到response中)

调用语法也不同:@Html.Partial(“partialViewName”)

@{Html.RenderPartial(“partialName”);}  即renderPartial是有边界存在的

Action

RenderAction

RenderPartial 和RenderAction的不同点:

1.RenderPartial的数据来自调用的View ,而RenderAction来自自己。

2.RenderAction会发起一个新的Request,而RenderPartial不会。

如何选择:根据两者不同点中的第二点,由于RenderAction会调用一个新的Action方法,而asp.net MVC中的Action是最小的缓存单位,因此如果某一个块的数据比较固定,不会因为访问者的不同而发生变化,那么这时就是使用RenderAction的时候了。题外话,对于RenderAction会发起一个新的Reuest,感觉对调用页面的流程进行破坏了。一个View在显示的时候,自己发起请求Request去获取数据来显示,显然破坏了作为一个View的原则:A View Should only know how to render,but not what to render!

ChildAction Attribute   the attribute prevents the runtime from invoking the action directly via the URls;

 

In MVC 3 there is also a new property on the ControllerContext named IsChildAction.IsChildAction  will be true when someone calls an action via Action or RenderAction( but false  when invoked via Urls).

Action  RenderAction  Partial  RenderPartial  的作用都相当于web form时代的用户控件(User Control),只是加载的方式可能不同,但是最后得到的效果都是大同小异的

我又回来了,回到了技术最前线,
相关文章
|
3月前
|
开发框架 前端开发 .NET
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
38 0
|
29天前
|
开发框架 前端开发 .NET
进入ASP .net mvc的世界
进入ASP .net mvc的世界
28 0
|
29天前
mvc.net分页查询案例——mvc-paper.css
mvc.net分页查询案例——mvc-paper.css
5 0
|
1月前
|
开发框架 前端开发 .NET
C# .NET面试系列六:ASP.NET MVC
<h2>ASP.NET MVC #### 1. MVC 中的 TempData\ViewBag\ViewData 区别? 在ASP.NET MVC中,TempData、ViewBag 和 ViewData 都是用于在控制器和视图之间传递数据的机制,但它们有一些区别。 <b>TempData:</b> 1、生命周期 ```c# TempData 的生命周期是短暂的,数据只在当前请求和下一次请求之间有效。一旦数据被读取,它就会被标记为已读,下一次请求时就会被清除。 ``` 2、用途 ```c# 主要用于在两个动作之间传递数据,例如在一个动作中设置 TempData,然后在重定向到另
95 5
|
3月前
|
XML 前端开发 定位技术
C#(NET Core3.1 MVC)生成站点地图(sitemap.xml)
C#(NET Core3.1 MVC)生成站点地图(sitemap.xml)
25 0
|
3月前
|
前端开发
.net core mvc获取IP地址和IP所在地(其实是百度的)
.net core mvc获取IP地址和IP所在地(其实是百度的)
123 0
|
5月前
|
开发框架 自然语言处理 前端开发
基于ASP.NET MVC开发的、开源的个人博客系统
基于ASP.NET MVC开发的、开源的个人博客系统
51 0
|
8月前
|
SQL 开发框架 前端开发
[回馈]ASP.NET Core MVC开发实战之商城系统(完:内附源码)
经过一段时间的准备,【ASP.NET Core MVC开发实战之商城系统】已经完成,目前代码已开发完成,先将全部内容整理分享,如有不足之处,还请指正。
106 0
|
8月前
|
开发框架 前端开发 .NET
[回馈]ASP.NET Core MVC开发实战之商城系统(六)
经过一段时间的准备,新的一期【ASP.NET Core MVC开发实战之商城系统】已经开始,在之前的文章中,讲解了商城系统的整体功能设计,页面布局设计,环境搭建,系统配置,及首页【商品类型,banner条,友情链接,降价促销,新品爆款】,商品列表页面,商品详情,购物车等功能的开发,今天继续讲解订单管理功能开发,仅供学习分享使用,如有不足之处,还请指正。
214 0
|
8月前
|
存储 开发框架 前端开发
[回馈]ASP.NET Core MVC开发实战之商城系统(五)
经过一段时间的准备,新的一期【ASP.NET Core MVC开发实战之商城系统】已经开始,在之前的文章中,讲解了商城系统的整体功能设计,页面布局设计,环境搭建,系统配置,及首页【商品类型,banner条,友情链接,降价促销,新品爆款】,商品列表页面,商品详情等功能的开发,今天继续讲解购物车功能开发,仅供学习分享使用,如有不足之处,还请指正。
114 0