三层架构中DataTable华丽变身泛型集合

本文探讨了在三层架构中,为什么避免使用DataTable并转向使用List<>泛型集合的原因。DataTable作为弱类型可能导致数据错误丢失,而List<>提供强类型、灵活性和性能优势。通过创建转换类,实现了DataTable到List<>的转变,以此保持三层结构的清晰和高效。
摘要由CSDN通过智能技术生成

前言:

    做系统前期,抱着“实现了三层已经很不错了”的心情,并没有考虑到DataTable传到B层,或传到U层与DataGridView绑定,显示数据有什么错误的地方。后来“偷”听了一节课,才知道返回DataTable是破坏三层结构的。于是就开始了三层架构中DataTable变形记的探索。


    变形之前我考虑到了以下几点内容,也是看了很多的资料,总结下来的。(本身是菜鸟一枚,So...下面展示的代码不是我自己写的,参考了十期师哥的博客。站在巨人肩膀上啦)



一、DataTable与List<>的区别


    DataTable是数据集的填充,List<>是对象化的填充。DataTable是弱类型,没有办法直接看出数据表中字段的数据类型,List<>是强类型。最大的区别是,List<>可以灵活转换,不用装箱和拆箱(装箱拆箱:利用装箱和拆箱功能,可通过允许值类型的任何值与Object 类型的值相互转换),这个过程中可能会造成数据的错误丢失,这样看来DataTabel也不是很安全的。


  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 50
    评论
评论 50
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值