asp.net mvc 的 视图(view )的模块化开发
来源:互联网 发布:健身大数据 编辑:程序博客网 时间:2024/04/28 20:38
目前所在项目有一个视图,几个模块都涉及到,对应不同的开发人员,虽然有SVN在管理,但代码冲突时有发生。并且大家的代码挤于其中,逻辑比较容易混乱。
将不同部件独立出去,实有必要。
分离方式,我知道的有 3 种:
1、利用JS动态加载子视图
将分离内容放置在一个视图里面,视图还可以对应有控制器。主视图加载过程中,或者运行过程中,再用JS去请求、加载这个子视图:
var div = ...var url = "@Url.Content("~/controller/GetDataByView?id=")" + id;getViewRequest(url, {}, function(data){ div.empty().html(data); });function getViewRequest(url, params, onsuccess, onerror) { $.ajax( { type: 'get', url: url, data: params, contentType: "text/html; charset=utf-8", success: function (data) { if (onsuccess != undefined && onsuccess != null) { onsuccess(data); } }, error: function (data) { if (onerror != undefined && onerror != null) { onerror(data); } } });}
2、Html.RenderAction
这个与1的区别主要是加载方式不同。1是主视图出来后,在前端用JS动态加载,会比较迟才出来;2是与主视图一同输出到前端。
2与3的区别在于,2的数据来源于控制器,3的数据来源于主视图。3没有控制器。
有关Html.RenderAction,可见拙作:
http://blog.csdn.net/leftfist/article/details/17115757
3、Html.RenderPartial
相当于shtml里面的inclue,<!--#include virtual="/template/css.htm"-->。只是接入一个视图,该视图并没有控制器。数据可由主视图传送给它。
下面是具体的例子:
主视图控制器:
主视图:
其中,BottomTags是子视图名称(BottomTags.cshtml),ViewBag.TagArray是传给它的Model。一定要强制转换,不能直接用ViewBag。
子视图BottomTags
如此,子视图可无缝接合于主视图矣。
0 0
- asp.net mvc 的 视图(view )的模块化开发
- 我要学ASP.NET MVC 3.0(六): MVC 3.0创建你的View视图
- Asp.net mvc View视图
- .NET/ASP.NET MVC(模块化开发AraeRegistration)
- .NET/ASP.NET MVC(模块化开发AraeRegistration)
- ASP.NET MVC框架之视图View(五)
- ASP.NET MVC 3的分部视图
- ASP.NET MVC 的分部视图
- 敏捷开发中asp.net MVC的开发次序感受(先开发View?先开发Model?先开发Controller!)
- 敏捷开发中asp.net MVC的开发次序感受(先开发View?先开发Model?先开发Controller!)
- 敏捷开发中asp.net MVC的开发次序感受(先开发View?先开发Model?先开发Controller!)
- Ajax 请求 asp.net mvc 的View
- Mvc多级Views目录 asp.net mvc4 路由重写及 修改view 的寻找视图的规则
- Mvc多级Views目录 asp.net mvc4 路由重写及 修改view 的寻找视图的规则
- Mvc多级Views目录 asp.net mvc4 路由重写及 修改view 的寻找视图的规则
- Mvc多级Views目录 asp.net mvc4 路由重写及 修改view 的寻找视图的规则
- AngularJS ,ASP.NET MVC – 新Web模块化开发
- asp.net mvc (4) - 自定义视图引擎 View/ViewEngine
- Hduoj1172【暴力】
- 抓取解压
- spring包的详解
- 寻找只出现一次的数字(LeetCode: Single Number II)
- 【Android】不要在Application对象中缓存数据!
- asp.net mvc 的 视图(view )的模块化开发
- iframe 父子页面操作
- 优酷首页出现“此网页包含过多的循环重定向”错误的解决办法
- java类加载器-动态代理类-Properties类使用
- hbase基本概念和hbase shell常用命令用法
- webdriver API中文版
- 机器学习与智能计算 之 最小二乘法
- andriod基础5大基础布局之表格布局(TableLayout)
- 产品经理如何做好产品的把关?如何搞产品测试?