【问题标题】:From datatable to Entity从数据表到实体
【发布时间】:2011-11-21 20:25:24
【问题描述】:

是否可以使用 DataTable 的内容填充实体?

【问题讨论】:

  • 不。 AFAIK 循环遍历 DataTable 将是唯一的选择
  • 嗯,也许有更好的方法。我正在将电子表格读入数据表,然后想用它来填充 SQL 实体。我要解决这个问题了吗?
  • @Brian 将电子表格直接读入 SQL 实体?
  • @giddy 我不认为你可以直接从电子表格读取实体?
  • @Brian lol 不,我的意思是不要遍历电子表格中的数据并将其放入实体中。

标签: c# entity-framework datatable


【解决方案1】:

我不确定这是否正是您正在寻找的,但它应该可以工作;有一个 .AsEnumerable() 扩展方法,然后您可以使用该方法将行投影到新实体中。

var products = productTable.AsEnumerable().Select(row => new Product 
{
    ProductID = row.Field<int>("ProductID"),
    Name = row.Field<string>("Name"),
    CreatedDate = row.Field<DateTime>("CreatedDate")
});

据我所知,.Field&lt;T&gt;() 方法不会进行任何类型转换,因此如果该列没有设置类型,您需要自己进行转换。

【讨论】:

  • 嗯...就我而言,这正是我想要的。之后我错过了AsEnumerable()Field&lt;&gt;() 的那些曲折。非常感谢!
【解决方案2】:

我相信这就是您正在寻找的: Converting DataTable to Entities

【讨论】:

    猜你喜欢
    • 2018-11-07
    • 2014-12-30
    • 2015-12-14
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-17
    相关资源
    最近更新 更多