Html.Action用法
2016-03-23 12:03
399 查看
使用方法:@Html.Action(action, controller)
加载局部页面。
例如在模板页中使用:@Html.Action("Contact", "Company")
在CompanyController中有如下方法:
public PartialViewResult Contact()
{
return PartialView();
}
1、带有Render的办法返回值是void,在办法内部进行输出;不带的返回值类型为MvcHtmlString,所以只能如许应用:
@Html.Partial 对应 @{Html.RenderPartial(....);}
@Html.Action 对应 @{Html.RenderAction(....);}
2、Action、RenderAction加载办法的视图,履行Controller → Model → View的次序,然后把产生的页面带回到本来的View中再回传。而Partial、RenderPartial直接加载视图文件内容
3. Html.Partial可以直接供给用户控件名作为参数,而Html.Action须要有对应的Action,在Action内部返回PartailResult(即retun PartialView())。
4、对于简单的没有任何逻辑的用户控件,推荐应用Html.Partial;对于须要设置一些Model的用户控件,推荐应用Html.Action。当然,有Model数据也是可以应用Html.Partial办法的,可以看办法的重载。
5、应用Html.Action有个益处,就是可以按照不合的场景选择不合的用户控件。比如:
@Html.Action("UserInfoControl")
在对应的UserInfoControl这个Action中,在用户未登录的时辰,可以retun PartialView("LogOnUserControl");登录后,可以retun PartialView("UserInfoControl");
加载局部页面。
例如在模板页中使用:@Html.Action("Contact", "Company")
在CompanyController中有如下方法:
public PartialViewResult Contact()
{
return PartialView();
}
ASP.NET MVC 中@Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction差别
对这四个的差别做一个总结,清理一下思路,便利今后应用:
1、带有Render的办法返回值是void,在办法内部进行输出;不带的返回值类型为MvcHtmlString,所以只能如许应用:@Html.Partial 对应 @{Html.RenderPartial(....);}
@Html.Action 对应 @{Html.RenderAction(....);}
2、Action、RenderAction加载办法的视图,履行Controller → Model → View的次序,然后把产生的页面带回到本来的View中再回传。而Partial、RenderPartial直接加载视图文件内容
3. Html.Partial可以直接供给用户控件名作为参数,而Html.Action须要有对应的Action,在Action内部返回PartailResult(即retun PartialView())。
4、对于简单的没有任何逻辑的用户控件,推荐应用Html.Partial;对于须要设置一些Model的用户控件,推荐应用Html.Action。当然,有Model数据也是可以应用Html.Partial办法的,可以看办法的重载。
5、应用Html.Action有个益处,就是可以按照不合的场景选择不合的用户控件。比如:
@Html.Action("UserInfoControl")
在对应的UserInfoControl这个Action中,在用户未登录的时辰,可以retun PartialView("LogOnUserControl");登录后,可以retun PartialView("UserInfoControl");
相关文章推荐
- html中offsetTop、clientTop、scrollTop、offsetTop各属性介绍(转载)
- HTML标签整理
- html第五节课
- 修改innerHTML属性的问题
- 利用 html的锚点(元素a)功能实现ajax单页面应用的浏览器后退前进功能
- HTML网页版2048小游戏
- html中特殊字符的表示
- html 表格
- angular-HTML DOM
- html 标签
- 如何加快HTML页面加载速度
- 获取搜狗引擎 添加任意关键词 后的html源码(c#)
- html页面内容超出后显示水平滚动条的问题
- sitemesh html 本地乱码服务器正常
- HTML基础篇--网页布局
- jq val() 和 html() 用法注意
- html 最简遮罩层
- 如何在HTML中调用百度地图API
- 利用html 5 websocket做个山寨版web聊天室(手写C#服务器)
- html中事件处理中的this和event对象