編集:私はこの回答を読んで、似たようなことができるかどうか興味がありました.
私のプロジェクトには、ストアド プロシージャによってのみデータベースと通信するデータ層があります。プロシージャの 1 つは、1 対多の関係を持つ 2 つのテーブルからデータを返します。Oracle Data Access ライブラリの OracleDataAdapter を使用しています。Adapter は DataTable を埋めます。別のエンティティ クラス B のリストを持つエンティティ クラス A があります。この関係に一致するように DataTable を変換する必要があります。Datatable は、異なる B オブジェクトのみを持つ複数の行で埋められます。これを達成する方法はありますか?
EDIT2: A と B の 2 つのクラスがあるとします。
public class A{
public int Id { get; set; }
public string Nome { get; set; }
public string Descricao { get; set; }
public DateTime Data { get; set; }
public int Quantidade { get; set; }
public List<B> Bs { get; set; }
}
public class B{
public int Id { get; set; }
public string Nome { get; set; }
}
そして、次のようなデータを含む DataTable があります。
Id Nome Descricao Data Quantidade Id_B Nome_B
1 "nome1" "desc1" 05/07/2013 2 5 "nomeB_1"
1 "nome1" "desc1" 05/07/2013 2 13 "nomeB_2"
したがって、A は複数の B オブジェクトを持つことができます。このDataTableを取得して、Aのリスト内のBのリストに変換できる汎用パーサーを作成したいと思います.Marc Gravellのソリューションを、プロパティを分析してリストであるかどうかを知るための再帰的な方法で使用できると思います、および A の重複した ID ごとに処理します。これが可能かどうかは誰にもわかりますか?
よろしくお願いします。英語が下手で申し訳ありません。