SqlDataSourceView.ExecuteDelete(IDictionary, IDictionary) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
DeleteCommand SQL 文字列、DeleteParameters コレクションで指定した任意のパラメーター、および指定した keys
コレクションと oldValues
コレクション内の値を使用して、削除操作を実行します。
protected:
override int ExecuteDelete(System::Collections::IDictionary ^ keys, System::Collections::IDictionary ^ oldValues);
protected override int ExecuteDelete (System.Collections.IDictionary keys, System.Collections.IDictionary oldValues);
override this.ExecuteDelete : System.Collections.IDictionary * System.Collections.IDictionary -> int
Protected Overrides Function ExecuteDelete (keys As IDictionary, oldValues As IDictionary) As Integer
パラメーター
- keys
- IDictionary
IDictionary 操作で削除するオブジェクトまたは行のキー値の ExecuteDelete(IDictionary, IDictionary)。
- oldValues
- IDictionary
IDictionary プロパティが ConflictDetection 値に設定されている場合にだけ評価される行の値を格納している CompareAllValues。
戻り値
基になるデータベースから削除された行数を表す値。
例外
SqlDataSource が、基になるデータ ソースとの接続を確立できません。
- または -
ConflictDetection プロパティが CompareAllValues 値に設定され、oldValues
パラメーターが渡されていません。
現在のユーザーには、データベースにアクセスできる正しいアクセス許可がありません。
- または -
コントロールのインスタンスは、AccessDataSource コントロールであり、DataFile プロパティに指定されているパスへのアクセスは拒否されます。
CanDelete プロパティが false
です。
- または -
AccessDataSource コントロールのインスタンスを使用する前に、デザイン時の相対パスがデザイナーによって正しく割り当てられていませんでした。
注釈
クラスは SqlDataSourceView 、継承された ExecuteDelete メソッドを実装して、データベースからデータを削除します。 ページ開発者とデータ バインド コントロールの作成者は、 メソッドを ExecuteDelete 直接呼び出しません。代わりに、公開されている Delete メソッドを使用します。
コレクションに keys
含まれる値は評価され、コレクションに含まれるすべての値と DeleteParameters マージされます。 プロパティが ConflictDetection 値に CompareAllValues 設定されている場合、コレクションに oldValues
含まれる値は プロパティで OldValuesParameterFormatString 書式設定され、マージも行われます。
削除操作が実行される前に、 メソッドが OnDeleting 呼び出されてイベントが発生します Deleting 。 このイベントを処理して、パラメーターの値を調べ、削除の前に前処理を実行できます。
削除操作を実行するために、オブジェクトはSqlDataSourceViewテキストと関連DeleteParametersするプロパティをDeleteCommand使用してオブジェクトをビルドDbCommandし、基になるデータベースにDbCommand対してオブジェクトを実行します。 削除操作が完了すると、 OnDeleted メソッドが呼び出されてイベントが発生します Deleted 。 このイベントを処理して、戻り値とエラー コードを調べ、後処理を実行できます。
適用対象
こちらもご覧ください
.NET