さまざまなリストを渡す必要がある C# メソッドがあります。リストのタイプは非常に頻繁に異なります。メソッド自体は別の dll にあり、リストに含まれるクラス オブジェクトを認識できません (参照も using ステートメントもありません)。このメソッドは、リスト内の各項目の各メンバーを読み取り、それに基づいて文字列を構築して返す必要があります。
私の質問は、コンパイル時/実行時にこれらのさまざまなオブジェクトのメタデータを取得するにはどうすればよいですか? リフレクションはそれを行いますか?
また、メタデータを取得したら、それを使用して実際に変数を使用するにはどうすればよいですか?
ありがとうございました
編集:現在、私は次のように使用しています:
public string GetData(List<User> list){
//...
List<RowData> rows = new List<RowData>();
foreach (User item in list)
{
RowData row = new RowData();
row.id = count++;
row.cell = new string[3];
row.cell[0] = item.ID.ToString();
row.cell[1] = item.name;
row.cell[2] = item.age.ToString();
rows.Add(row);
}
//...
return new JavaScriptSerializer().Serialize(rows.ToArray());
現在、これは非常に具体的です。「ユーザー」以外のアイテムを渡すことができるように、これをジェネリックに置き換えたい