C# 多行选择,我应该把结果放在哪里?数据表与类模型?

C# 多行选择,我应该把结果放在哪里?数据表与类模型?,c#,oop,database-design,model,C#,Oop,Database Design,Model,目前,我正在使用以下代码行将select的整个结果集转储到数据表中: DataTable ds = new DataTable(); SqlDataAdapter da = new SqlDataAdapter(SQLCommand); da.Fill(ds); 然后我通过迭代行来读取所需的数据,然后使用row[“ID”].ToString()查找每个项目的值,我担心使用DataTable会带来较小的开销,因为我感觉它们的效率远远低于使用DataAdapter将类模型映射到每一行的效率 首选哪

目前,我正在使用以下代码行将select的整个结果集转储到数据表中:

DataTable ds = new DataTable();
SqlDataAdapter da = new SqlDataAdapter(SQLCommand);
da.Fill(ds);
然后我通过迭代行来读取所需的数据,然后使用
row[“ID”].ToString()查找每个项目的值,我担心使用DataTable会带来较小的开销,因为我感觉它们的效率远远低于使用DataAdapter将类模型映射到每一行的效率

首选哪一种-使用datatable并处理foreach中的每一行,还是使用枚举器显式映射类模型来表示行


如何将数据读取器映射到对象


如果我想知道使用一个对另一个的好处,那么如何量化它的好处?

如果你使用一个类,因为它是强类型的,那就更好了,但是有一个更好的选择,你必须考虑,实体框架基本上为您创建了所有模型,您不再需要创建自己的类并维护它们。在这里,您可以看到一个很好的指南,用EF映射数据库

“如何将数据读取器映射到对象?”听说过ORM吗?查找实体框架,这不是90年代的sEasy,@CamiloTerevinto。。。请记住,Stackoverflow不仅仅是由专家填充的。这里也有一些新手。嘿,Bitz,在你的情况下会有用吗?我通常会选择EF6,但在这种情况下,为一个表加载整个库的开销并不值得。我必须手动将每一行映射到一个对象,这就是为什么我的主要问题是“值得吗”?对于一个完整的codefirst应用程序,这是肯定的,但我不确定它是否在这种情况下。。。