首页 新闻 会员 周边 捐助

使用asp.net mvc 如果不使用linq,怎么进行数据传递

0
悬赏园豆:100 [已关闭问题]

最近在学习asp.net mvc框架,看到的例子基本上都是使用linq,本人对linq略懂一点,使用linq很方便的地方,就是直接使用linq设计器(我这种说法可能不准确,也就是直接把sqlserver中的表拖到设计器中),但是我所知道的是这个功能只能使用sqlserver,我所在的公司项目都是基于oracle,用不了这个功能(现在不知道能不能支持了),而且我本人不是很喜欢用linq,我一直使用webforms,采用三层架构,我基本上都是使用DataReader充当model,或者在数据层使用DataReader读取数据封装到泛类再传给页面层调用。

我想问的是:如果不使用linq,怎么在mvc里,把数据(model)从c中传到v里呢。

备注:

我开发项目使用传统的三层架构,也就是petshop那一套,现在bll和dal层都写好了,想改成使用mvc结构,如何能做到最小的改动。

 

我的一个想法是:可不可以结合使用传统的三层架构,bll调用dal读数据保持不变,使用在mvc中的控制器调用bll取数据,再传给view,这种想法可行么,或者有更好的方法么。

问题补充: 如果自己在dal层用dataReader取数据去实现数据封装,供control进行调用,再返回给view,好像感觉这样做的话asp.net mvc,完全是一个表现层(web)的东西了,自己想的有点乱,有仁兄能提供一份使用DataReader或自己实现数据封装的asp.net mvc示例程序供参考么?
长老的主页 长老 | 初学一级 | 园豆:115
提问于:2010-03-21 00:11
< >
分享
其他回答(9)
0

mvc框架与三层架构并不冲突啊,你的想法可行啊,而且只改变页面部分,底层的东西都不需要改动啊

小丁 | 园豆:301 (菜鸟二级) | 2010-03-21 08:49
0

MVC和你的是没有冲突的,按照你的想法来做也是没有问题的。其实怎么说,MVC中使用linq来做数据处理,个人觉得这个一是个人原因,二是linq和MVC相对Asp.NET来说比较新,大家都为了自我满足下(仅为玩笑啊)。

西越泽 | 园豆:10775 (专家六级) | 2010-03-21 12:08
0

以下资料是园子的一位高手写的

地址是:http://www.tzwhx.com/newOperate/Html/1/11/112/20069.html

你可以系统的看看

 

ASP.NET MVC中,经常会在ControllerView之间传递数据,因此,熟练、灵活的掌握这两层之间的数据传递方法就非常重要。本文从两个方面进行探讨:

Ø ControllerView传递数据

Ø ViewController传递数据

 

一、ControllerView传递数据


1.       使用ViewData传递数据

我们在Controller中定义如下:

ViewData[“Message”] = “Hello word!”;

然后在View中读取Controller中定义的ViewData数据,代码如下:

<% = Html.Encode(ViewData[“Message”]) %>

2.       使用TempData传递数据

我们在Controller中定义如下:

TempData[“Message”] = “Hello word!”;

然后在View中读取Controller中定义的TempData数据,代码如下:

<% = Html.Encode(TempData [“Message”]) %>

3.       使用Model传递数据

Tear Y | 园豆:784 (小虾三级) | 2010-03-21 12:17
0

我想你用的是Linq直接生成的类吧,你可你把DataReader读到的数据封装成对象再传过去,如果你懒得写代码,就用工具生成吧。

John Smith | 园豆:158 (初学一级) | 2010-03-21 20:29
0

那就使用ADO.NET也没关系阿

生鱼片 | 园豆:5757 (大侠五级) | 2010-03-22 10:36
0

不妨考虑一下使用 ALinq , http://cn.alinq.org

麦舒 | 园豆:452 (菜鸟二级) | 2010-03-22 13:12
0

呵呵 我也比较喜欢原来的写sql语句的,主要对Linq的表达式还不熟,不过Linq用熟的话肯定比写Sql语句好

JieLee | 园豆:160 (初学一级) | 2010-03-23 22:19
0

ADO.NET

独角戏-klx | 园豆:253 (菜鸟二级) | 2010-04-02 20:44
0

不推荐使用ViewData,ViewData、TempData都是用Session保存数据的

可以使用ViewBag 动态属性 .net 4.0出来的

MVC的世界里只有Model View Controller

一个url请求过来,route会直接找到对应的Controller中的Action,然后将对应的Model给View

所有的业务(包括数据交互)都是在Model中完成的

View只用于展示数据,考虑到Model的通用性,尽量不要在View层写业务逻辑 虽然它支持后台代码

南昌炒粉 | 园豆:760 (小虾三级) | 2011-12-26 16:13
0

我也是比较喜欢以前的SQL写法 不过现在没有办法在研究Lambda,因为也像楼主一样刚学习MVC

淘@淘 | 园豆:602 (小虾三级) | 2012-11-13 14:41
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册