如何选择Html.RenderPartial和Html.RenderAction及Html.RenderAction与Html.Action区别
2013-03-09 17:35
579 查看
Html.RenderPartial与Html.RenderAction这两个方法都是用来在界面上嵌入用户控件的。
Html.RenderPartial直接调用View视图
Html.RenderAction允许你直接调用某一个Action,并把返回的结果直接显示在当前调用的View中。
2、视图调用,分部视图MessageControl
》控制器方法
2、视图调用,控制器方法
注意:Html.Action不要放到{}中,使用@直接输出
Html.Action返回的是一个字符串(使用@直接输出)。
在Razor中,下面2中写法是等价的:
@Html.Action("ViewName")
@{Html.RenderAction("ViewName");}
你可以使用 Html.Action, 把Action View的输出保存到变量中, 但是Html.RenderAction不行.
Html.RenderAction会在执行的时候,直接把输出写进Response.
Html.RenderPartial直接调用View视图
Html.RenderAction允许你直接调用某一个Action,并把返回的结果直接显示在当前调用的View中。
一、Html.RenderPartial
1、在Views文件夹->Shared文件夹,Shared文件夹右键添加视图,选中“创建分部视图”,文件名:MessageControl@model List<string> <ul> @foreach (var item in Model) { <li>@item</li> } </ul>
2、视图调用,分部视图MessageControl
<html> <head> <title>Index</title> </head> <body> <div> @{ var testObj = new List<string>() { "aaa", "bbb", "ccc" }; } @{Html.RenderPartial("MessageControl", testObj);} </div> </body> </html>
二、Html.RenderAction
1、创建控制器,方法》控制器方法
public ActionResult Index2() { ViewBag.a = "测试"; return View(); }》视图
<div> @ViewBag.a </div>
2、视图调用,控制器方法
<html> <head> <title>Index</title> </head> <body> <div> @{Html.RenderAction("Index2", "Default1");} 或 @Html.Action("Index2","Default1") </div> </body> </html>
注意:Html.Action不要放到{}中,使用@直接输出
三、通过JQuery去调用 控制器/方法,并把结果填充到ID为fuck的DIV中
<html> <head> <title>Index</title> </head> <body> <div id="fuck"> </div> </body> </html> <script type="text/javascript"> $("#fuck").load('/Default1/Index2'); </script>
四、Html.RenderAction与Html.Action区别?
Html.RenderAction会将内容写入到response中, 返回void。Html.Action返回的是一个字符串(使用@直接输出)。
在Razor中,下面2中写法是等价的:
@Html.Action("ViewName")
@{Html.RenderAction("ViewName");}
你可以使用 Html.Action, 把Action View的输出保存到变量中, 但是Html.RenderAction不行.
Html.RenderAction会在执行的时候,直接把输出写进Response.
相关文章推荐
- [转]Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法
- Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法
- Html.Partial和Html.RenderPartial, Html.Action和Html.RenderAction的区别
- 如何选择Html.RenderPartial和Html.RenderAction
- 如何选择Html.RenderPartial和Html.RenderAction
- 如何选择Html.RenderPartial和Html.RenderAction
- 如何选择Html.RenderPartial和Html.RenderAction
- 如何选择Html.RenderPartial和Html.RenderAction
- Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法
- Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法
- 【ASP.NET】 MVC 中@Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction区别
- Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法
- 如何选择Html.RenderPartial和Html.RenderAction
- Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法(mvc部分视图的添加)
- @Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction区别 .(转)
- Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法
- 如何选择Html.RenderPartial和Html.RenderAction
- Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法
- 转载ASP.NET MVC 中@Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction区别
- @Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction区别 .(转)