c#中有一个方法可以自动将DataRow
结果映射到类的对象,而不是手动将每列映射到变量吗?
现在我要写这个:
我在数据库表中有EntityName列,而EntityName在类中是String
变量,我必须为每一列写{(dr
是DataRow
):
if (!dr.IsNull("EntityName"))
scoring.EntityName = dr["EntityName"].ToString();
有自动化的方法吗?
在spring框架中,这是BeanPropertyRowMapper()
方法。
答案 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 });
如果不使用第三方映射器,则没有内置方法可以自动执行此操作。