07/04/14 19:34:32
>>557
544です。
VisualStudioで、型指定付きのDataSetのxsdを作成してるのかな?
んで、そのデザイナ画面上でリレーショナルを設定しているということかな?
なら、そのDataTableの使い方がおかしい。
DataSetのインスタンスを生成した時点で、そのメンバであるDataTableも
作成されているので、別途DataTableのインスタンスを生成して、データセットに
addしなくてもいいはず。
必要な宣言は、
DSUserPages ds = new DSUserPages();
DSUserPagesTableAfapters.UserPaggeURLsTableAdapter dt = new .....
DSUserPagesTableAdapters.UserPageLinkListTableAdapter ta2 = new ....
だけ。
DataSetに取得したデータを入れるには
dt.fill(ds.UserPageURLsDataTable)
dt2.fill(ds.UserPageLinkListDataTable)
でok。
別途DataTableを作ってAddしてるのがまずおかしいので、そこから
直してみたほうがいいかもしれない。
それから、コレは好みで、今回のエラーとは関係ないけど、
リレーショナルを設定してるDataSetの場合、まず必要なDataTableを
すべてFillしてからRepeaterとかにBindしたほうがいい。
すべてFillする前に何らかの処理をしようとすると外部キー制約とかで
不注意にエラーになることがあるので、まず完全にDataSetを作ってから
Bindするなり操作する癖をつけたほうがいいよ。