我在数据集中获取了一些信息,我想将它转换为强类型的对象。 比如我的数据集有:如何将数据集转换为强类型对象?
表名:tab_data
行:1
列:名称,名字,地址
所以我创建了一个类,如:
public class Customer
{
public String Name;
public String FirstName;
public String Address;
}
是否有一个魔术技巧,简单地投我的数据集到客户类型?使用LiNQ?
感谢,
我在数据集中获取了一些信息,我想将它转换为强类型的对象。 比如我的数据集有:如何将数据集转换为强类型对象?
表名:tab_data
行:1
列:名称,名字,地址
所以我创建了一个类,如:
public class Customer
{
public String Name;
public String FirstName;
public String Address;
}
是否有一个魔术技巧,简单地投我的数据集到客户类型?使用LiNQ?
感谢,
不能投这一点,但你可以翻译数据...
答案很可能是1代比表它是20个不同的;在个别的基础上,你应该能够将Select
输出(或者just iterate) - 这将是最快的选择,但是如果你有很多表格,这将是很多维护工作。在后一种情况下,某种反思,perhaps like so。
是否有您尚未创建一个强类型DataSet下手的原因吗?这可能是最简单的解决方案。
您可以使用AsEnumerable
扩展DataTable
并从DataRow
创建Customer
如果你真的需要一个投影肯定将每个数据表为(比如说)List<Customer>
。
下面是如何将数据集转换为强类型对象的示例。在某些情况下,我们通过其他可能不会强类型的来源获取数据到数据集中。但数据集允许我们将数据转换为强类型对象。
List<Customer> CustomerList =
(from row in ds.Tables[0].AsEnumerable()
select new Customer
{
Name = row.Field<string>("Name"),
FirstName = row.Field<string>("FirstName"),
Address = row.Field<string>("Address")
}).ToList();