property.setvalue() に代わるものは何ですか? 私はそれが非常に遅いと読んだことがあります。IDataReader を POCO オブジェクトにマップするために使用しています。
これは、コードの切り詰められたバージョンです。ここにあるものはすべて私にとってとても新しいものです。このタスクを達成するフレームワークがたくさんあることを私は知っています。ただし、使用できません。
public class DbAutoMapper<T>
{
public IEnumerable<T> MapToList(IDataReader reader)
{
var list = new List<T>();
while (reader.Read())
{
var obj = Activator.CreateInstance<T>();
foreach (PropertyInfo prop in obj.GetType().GetProperties())
{
foreach (var attribute in prop.GetCustomAttributes(true))
{
prop.SetValue(obj, value, null);
}
}
list.Add(obj);
}
return list;
}
}