IEnumerable,List或???用于返回ADO.NET集合?

时间:2014-03-24 00:05:39

标签: c# datatable ado.net ienumerable

如果我们使用ADO.NET进行数据访问,我们应该如何返回对象的集合?我读到DataTables不是最好的方式(也因为它们是无类型的)。在过去我知道你可以用XSD来输入它们,但那仍然不是我认为的对象的正确集合。

我们将拥有我们的类(例如Employee)和属性等,因此将返回单个对象,例如和Employee对象。但是一个集合应该是IEnumerable吗?如果是这样,我们是否要迭代类中的DataTable并一次添加到列表中?这看起来很麻烦(我认为这也需要一个List)。

感谢任何指导。

1 个答案:

答案 0 :(得分:2)

  

如果是这样,我们是否要在类中迭代DataTable并一次添加到列表中?

不,完全忘记DataTable。你没有填充DataTable - 你直接进入列表;或者通过ORM(EF,NHibernate等),或者通过像#34; dapper"这样的工具:

string region = ...
var customers = conn.Query<Customer>(
    "select * from Customer where Region=@region",
    new { region }).ToList();