宣言の両側 (入力と出力) で匿名型を使用してリストを作成することは可能ですか?
私はこのようなことをしたいと思います:
List<Class1> list = getList<Class1>(List<Class2> list2);
...次のように宣言されたメソッドを使用します。
public static List<T1> getList<T1>(List<T2> list2)
{
    List<T1> list = new List<T1>();
    foreach (var item in list2) {
        list.Add(new T1(item));                
    }
    return list;
}
基本的に、 class2 項目を含むリストを class1 項目を含む新しいリストに変換したいだけです。私のアイデアは、クラス 1 にコンストラクターをセットアップし、(クラス 1 からクラス 2 への) 変換ジョブを実行することでした。しかし、そのようなことを行うより良い方法があるかもしれません。これらは私のクラスです:
public class Class2
{
    string prop1 { get; set; }
    string prop2 { get; set; }
}
public class Class1
{
    string member1 { get; set; }
    string member2 { get; set; }
    //constructor: 'converts' class1 in class2
    public Class1(Class2 class2)
    {
        this.member1 = Util.getThisAndThat(class2.prop1);
        this.member2 = Util.doBunchOfStuff(class2.prop2);
    }
}
どんな助けでも感謝します:)