dataset 和强类型dataset 比较

非强类型(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”]


你可能感兴趣的:(dataset 和强类型dataset 比较)