摆脱DataSet的束缚

该博客为转载内容,转载自https://www.cnblogs.com/stonesun/archive/2005/06/11/172548.html ,原内容可能与数据库相关。
前段时间学了点关于UML的东西,虽然能学点理论,但自己想描述一个简单的问题的时候发现还是比较困难的.看来这个东西真的需要长时间的积累啊.在学习过程中发现一个我们平时在工作的时候很容易犯的错误,就是从数据库映射的对象实体的时候都是直接把数据库中的外键作为对象的一部分,应该把外键对应的对象作为该对象的一部分.
    同时我也发现在.NET 中具有强大功能的DataSet对面向对象系统设计的干扰,很多系统用的实体对象都是继承DateSet的,其实它本身只是一个数据容器,而且它是弱数据类型的,即便在其中定义了一些对应列名的常量,这些常量也只能避免记忆繁杂的列名,对对象本身并没有本质上的改变。理想情况下,应该是在对象中定义了一些强类型的属性,而且可以在对象上定义一些方法,可以方便实现上层逻辑。我也不能很清楚的说出DataSet对OO的影响,但感觉上很不对,虽然它对数据操作很方便,但我们更应该解决的问题是上层逻辑。
    我现在正在试探的改变在系统的各个部分上都使用DataSet的做法,尽量只在DAL层使用,其它层都用具有意义的对象而不是单纯的数据容器。也就是O/R Mappings时脱离DataSet而是用自定义的对象。但我现在在处理对象之间的关系和多表连接查询后数据的存放对象遇到一些问题,不知道该怎么解决。
    和我有相同看法的XD跳出来大家一起探讨啊。

转载于:https://www.cnblogs.com/stonesun/archive/2005/06/11/172548.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值