DsPerson という名前の型指定されたデータセットと、ListPerson という名前のカスタムの型指定されたジェネリック リストがあります。
DsPerson Ds1Person;
List<Person> ListPerson;
以下のコードのようなことをしたいのですが、
これを修正するのを手伝ってください:
DataTable dtPerson = Ds1Person.Tables["Person"];
DataRow drPerson = dtPerson.NewRow();
DsPerson.PersonRow[] updRows = ListPerson.Cast<Person>().Select(row => dtPerson.NewRow()
{
Nick = row.Nick,
Name = row.NameX,
}).ToArray();
この方法で作成された DataRow 配列または一般的な DataTable が必要でした。
私が取り組んでいるコード仕様のため、ここでエンティティまたは他の代替手段を探していません。
どんな助けでも本当に感謝しています...
More Clarifying :
必要なもの :
これらを逆にするようなもの:(反対の方法)
http://www.stackoverflow.com/questions/441023/fastest-way-to-convert-datatable-to-generic-list
またはこれに似た何かを行うよりクリーンでLinqyの方法:
http://beecy.net/post/2009/05/18/convert-generic-list-to-datatable-using-reflection.aspx
adapter.Update (updRows); で使用する適切なDsPerson.PersonRow[] updRowsを取得します。
なにが問題ですか ?
Cast - Select ステートメントにはわずかなエラーがあります。これと似ているはずだとわかっただけなので、このコード行の構造についてはわかりません。
今のところ、報告されたエラーは次のとおりです。
エラー 2 型 'System.Collections.Generic.IEnumerable' を 'DsPerson.PersonRow[]' に暗黙的に変換することはできません。明示的な変換が存在します (キャストがありませんか?)