将匿名类型转换为 DataTable
将匿名类型转换为 DataTable 的最快方法是什么?
更新: 我想从匿名类型获取并填充 DataTable。如果需要反射,我该如何使用反射来做到这一点?
What is the fastest way to convert anonymous type to DataTable?
Update:
I want to get and populate DataTable from anonymous type. If reflection is neccesary, how can I to do it using reflection?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
找到此处:
请参阅此处了解通用解决方案:将通用列表/枚举转换为数据表?
Found here:
See here for a generic solution: Convert generic List/Enumerable to DataTable?
Dim i = dt.Rows.Count
dt 中的记录(数据表变量)
Dim i = dt.Rows.Count
record in dt(datatable variable )
///汇总填充数据表一 (dt1)
Dim dt1 As New DataTable
dt1 = connection.LoadPoliceData("")
///汇总填充数据表一 (dt2)
Dim dt2 As New DataTable
dt2 = connection.LoadDataCompare("")
// /summary 声明数据表保存。我想要填充可枚举数据的位置
Dim save As New DataTable
save.Columns.Add("Name", GetType(String))
save.Columns.Add("Mobile", GetType(String))
///总结使用 join 编写 linq 查询dt1 和 dt2 ,以及 datatable(save)
Dim data1 = (来自 datarow1 中的 dt1.AsEnumerable
在 dt2.AsEnumerable 中加入 datarow2
在 datarow1.Field(Of String)("NameofPerson") 等于 datarow2.Field(Of String)("Name") 和 datarow1.Field(Of String)("Mobile") 等于 datarow2.Field(Of String)("MobileNumber ”)
选择 save.LoadDataRow(New Object() {datarow1.Field(Of String)("NameofPerson"), datarow2.Field(Of String)("MobileNumber")}, False)).Distinct().ToList()
// /数据表保存的摘要计数
Dim i = save.Rows.Count
///summary fill datatable one (dt1)
Dim dt1 As New DataTable
dt1 = connection.LoadPoliceData("")
///summary fill datatable one (dt2)
Dim dt2 As New DataTable
dt2 = connection.LoadDataCompare("")
/// summary declare datatable save . where i want fill Enumerable data
Dim save As New DataTable
save.Columns.Add("Name", GetType(String))
save.Columns.Add("Mobile", GetType(String))
///summary writing linq query with join of dt1 and dt2 , And datatable(save)
Dim data1 = (From datarow1 In dt1.AsEnumerable
Join datarow2 In dt2.AsEnumerable
On datarow1.Field(Of String)("NameofPerson") Equals datarow2.Field(Of String)("Name") And datarow1.Field(Of String)("Mobile") Equals datarow2.Field(Of String)("MobileNumber")
Select save.LoadDataRow(New Object() {datarow1.Field(Of String)("NameofPerson"), datarow2.Field(Of String)("MobileNumber")}, False)).Distinct().ToList()
///summary count of datatable save
Dim i = save.Rows.Count