オブジェクトと、このオブジェクトの一連のプロパティを受け取る汎用関数を作成したいと考えています。関数内で、渡されたオブジェクトのプロパティだけである新しい匿名オブジェクトを選択したいと思います。
私はこのようなことをしたい:
public class SimpleClass
{
public DateTime ADate {get; set;}
public string StringHere {get; set;}
public int ANumber {get; set;}
}
var testObj = new SimpleClass();
// set values here on testObj properties
DoStuffHere(testObj, StringHere, ANumber);
プロパティを文字列として渡し、リフレクションを使用して渡されたオブジェクトからプロパティを取得できますが、プロパティ自体を渡す方法があるかどうかを知りたかったので、IntelliSense とコンパイル時のチェックを行って防止することができました。悪いプロパティ名。getNewClass 関数が任意のタイプのオブジェクトを取り、そのようなものをジェネリックにしたいと考えています。
編集:私は新しい匿名型を返していません。私の関数名がそのように聞こえたと思います。指定された testObj のリストから新しい匿名型を内部的に選択し、それらのプロパティから PDF を生成します。