List<T1>
へのマッピングを手書きする最良の方法はList<T2>
?
私の例のクラス:
public class T1
{
public int ID {get; set}
public string Name {get; set}
}
public class T2
{
public int ID {get; set}
public string Name {get; set}
}
本当にこれを手動で行いたい場合は、拡張メソッドが便利な方法です。
public static T2 ToT2(this T1 t1)
{
return new T2 { ID = t1.ID, Name = t1.Name };
}
public static List<T2> ToT2List(this IEnumerable<T1> t1List)
{
return t1List.Select(t1 => t1.ToT2()).ToList();
}
使用法:
T2 t2 = t1.ToT2();
List<T2> t2List = t1List.ToT2List();
ただし、リフレクションを使用して名前でプロパティを照合するAutomapper (または他のマッピング ツール) を使用することをお勧めします。