有没有一种方法可以将DataRow映射到类的对象

时间:2018-05-31 11:14:00

标签: c# asp.net .net

c#中有一个方法可以自动将DataRow结果映射到类的对象,而不是手动将每列映射到变量吗?

现在我要写这个: 我在数据库表中有EntityName列,而EntityName在类中是String变量,我必须为每一列写{(drDataRow):

if (!dr.IsNull("EntityName"))
    scoring.EntityName = dr["EntityName"].ToString();

有自动化的方法吗? 在spring框架中,这是BeanPropertyRowMapper()方法。

1 个答案:

答案 0 :(得分:1)

你应该看看Dapper。它是.NET的一个简单的开源对象映射器,可以为您执行此映射。

const string Query = "SELECT * FROM YourTable WHERE YourColumn = @Param1";

IEnumerable<YourClass> items;
using (var connection = new SqlConnection("connection string..."))
    items = connection.Query<YourClass>(Query, new { Param1 = 1 });

如果不使用第三方映射器,则没有内置方法可以自动执行此操作。