- - PR -
型付けられたデータセットのリレーション例外エラー処理について
1
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2002-11-06 10:47
XMLデザイナで型付けられたデータセットの2つのテーブルにリレーションを作成しています。
CSVファイルから子テーブルにデータを取得しようとしているのですが、 「System.Data.InvalidConstraintException:ForeignKeyConstraint Table1には親テーブルに存在している子キー値 (1) が必要です。」 がスローされてしまいます。 例外がスローされるのは分かるのですが、CSVデータ取得中はそのまま処理を継続して行にエラーとしてマークさせたいと思っています。 そのため[RowChanging]イベントで [e.Row.BeginEdit()]と制約を一時停止して [RowChanged]イベントで Try e.Row.EndEdit() Catch ex As Exception e.Row.RowError = ex.Message End Try と出来ないかやってみたのですが、どうも[RowChanging]のイベントの前でエラーが発生してしまうようなので、解決方法が見つからずに困っています。 なにかよい方法はありませんでしょうか? |
|
投稿日時: 2002-11-07 10:49
いろいろと試しています。
どうもRowChanging内でBeginEditを呼び出してはいけないのですね。 そのようなエラーが出てしまいました。 XMLで設定された制約はどこから例外が発生しているのでしょうか? データセットで作成されたコードを変更するわけにもいかないですね〜。 リレーションの制約を無効にする方法を探しています。 よろしくお願いいたします。 |
|
投稿日時: 2002-11-08 11:04
なんとか解決できました。
データセットのEnforceConstraintsプロパティをFalseにして制約を無効にし、 データ処理を実行した後でTryCatchで内でTrueに戻す方法です。 |
1
