如何将DataView、DataRowView转换为泛型类型列表
本文关键字:转换 泛型类型 列表 DataRowView DataView | 更新日期: 2023-09-27 17:58:34
除了循环,还有其他可能的方法吗?枚举ICollection以将它们分别转换为已知ICollection中列的Typed List。我使用的是.net Framework 2.0,C#2.0。预期的答案是这样的,一个单行
List<Bills> bills = GetBills(DataView/DataRowView/ICollection);
其中CCD_ 2类型将具有CCD_ 3作为属性。DataRowView/DataView将具有相应的列,其中包含记录。有没有一种工厂建造的方法可以完成这项工作?如果没有任何一个班轮来做这件事?
你能用带lambda的LINQ Select在一行中完成吗?沿着这些路线。。。。
List<Bills> bills = yourDataView.Rows.Select(t => new Bills() {BillNumber = t["BillNumber"], BillDate = t["BillDate"], BilledTo = t["BilledTo"]}).ToList();
使用Linq-Select将DataView行转换为对象列表:
DataView yourDataView;
List<Bills> bills = yourDataView.ToTable().Rows.Cast<DataRow>()
.Select(r => new Bills()
{
BillNumber = r.Field<int>("BillNumber"),
BillDate = r.Field<DateTime>("BillDate"),
BilledTo = r["BilledTo"].ToString()
}).ToList();