dataset 和强类型dataset 比较

本文深入探讨了强类型Dataset和非强类型Dataset的特性对比,包括编码时的约定方式、编译时的校验能力、数据操作的灵活性及安全性等方面。详细阐述了如何在实际开发中灵活选择并利用这两种Dataset类型,以提高代码的可读性和维护性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

非强类型(UnTyped)Dataset : 强类型(Strong-Typed)Dataset :
无法定义对象实体的各个属性的类型:
lDs.Table["MyTable"].Rows[0]["FirstName"] 无法未定义
可以定义对象实体的各个属性的类型:
MyDataRow.FirstName为string类型
Coding时无法静态约定,只能通过TableName FieldName动态约定:
string lFirstName = lDs.Table["MyTable"].Rows[0]["FirstName"] .ToString()
Coding时可以静态约定:
string lFirstName = lTypedDs.MyTable[0].FirstName
因为没有继承,无法提供自定义的方法属性因为时自定义的Dataset,DataTable和DataRow除了父类的方法属性之外可以新增另外的方法属性
编译时无法进行校验(类型转换,拼写检测),只能到运行时才知道是否对错.比如无法确定"MyTable", "FirstName"是否拼写错误等等可以在编译期进行校验(类型是否匹配等等).


强类型(Strong-Typed)Dataset,我们的代码中不会出现如下形式的代码:

Tables[“TableName”]

Rows[n][“FieldName”]


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值