9.1.2.2 OracleDependency(OracleCommand)
このコンストラクタは、OracleDependency
クラスのインスタンスを作成し、OracleCommand
インスタンスにバインドします。
宣言
// C#
public OracleDependency (OracleCommand cmd)
パラメータ
-
cmd
OracleDependecy
オブジェクトがバインドされるコマンド。
例外
ArgumentNullException
- cmd
パラメータがNULLです。
InvalidOperationException
- 指定されたOracleCommand
インスタンスには、すでに通知要求が含まれています。
備考
このOracleDependency
コンストラクタによりOracleCommand
インスタンスがOracleDependency
インスタンスにバインドされると、OracleNotificationRequest
インスタンスが作成され、OracleCommand.
Notification
プロパティにそのOracleNotificationRequest
インスタンスが設定されます。
連続問合せ通知は、コマンド実行時にデータベースに登録されます。コマンド実行メソッド(ExecuteNonQuery
やExecuteReader
など)により、通知要求が登録されます。OracleDependency
は、複数のOracleCommand
にバインドできます。これらのOracleCommand
オブジェクト文のいずれかが実行されると、関連付けられているOracleCommand
にその文が登録されます。個々のOracleCommand
の登録は個別に発生しますが、OracleDependency
が関連付けられているすべてのOracleCommand
オブジェクトに対して発生する、通知の検出および送信は1つのOracleDependency
で行うことができます。OnChange
イベントのアプリケーションに渡されるOnChangeEventArgs
では、データベース内での変更に関する情報を提供します。
このコンストラクタによって作成されるOracleNotificationRequest
インスタンスのプロパティのデフォルト値は、次のとおりです。
-
IsNotifiedOnce
はTrue
に設定されます。 -
Timeout
は50,000秒に設定されます。 -
IsPersistent
はFalse
に設定されます。つまり、無効化メッセージに永続性はなく、配信前にインメモリー・キューに格納されます。