VariableDispenser クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
パッケージ実行中に Variables コレクションにアクセスします。 このクラスは継承できません。
public ref class VariableDispenser sealed : Microsoft::SqlServer::Dts::Runtime::DtsObject
public sealed class VariableDispenser : Microsoft.SqlServer.Dts.Runtime.DtsObject
type VariableDispenser = class
inherit DtsObject
Public NotInheritable Class VariableDispenser
Inherits DtsObject
- 継承
注釈
可変ディスペンサーを使うシナリオは2つあります。
変数は一つだけが望ましいです。 この場合、 LockOneForRead または LockOneForWriteを呼び出し、1つの要素を持つコレクションが返されます。
いくつかの変数が必要です。 このシナリオでは、 LockForRead と LockForWrite を複数回、各変数ごとに呼び出します。 これにより、読み込み用の変数を含むリストと書き込み用の変数を含むリストの2つのリストが構築されます。 次に GetVariablesを呼び出し、すべてのロックされた変数を含むコレクションが得られます。 GetVariables成功すると、実際のロックではなく変数名のリストである2つのリストがクリアされます。
ロックを明確に解放するには、回収 Unlock に連絡してください。 この方法は変数自体を解放します。 GetVariables失敗してもリストは変更されず、再度GetVariablesに連絡できます。 それでも変数を入手できなければ、 Reset に連絡してリストをクリアし、変数ディスペンサーを元の状態に戻してください。
Variablesコレクションには、変数ディスペンサーの変数コレクションがロックされている(true)かアンロックされている(false)かを示す Locked プロパティが含まれています。 このプロパティを確認する理由は、一部のタスクが使用中の変数に明示的にロックを解除し、 Unlock を2回呼び出すとエラーが出るからです。 したがって、この特性を使って、 Unlockに電話する前に、ディスペンションされた回収がロックされているかどうかを判断してください。
Important
VariableDispenserはランタイムクラスと共に使用されます。 データフローコンポーネント(Microsoft.SqlServer.Dts.Pipeline)を使用している場合は、代わりに IDTSVariableDispenser100 を使う必要があるかもしれません。 どの変数ディスペンサーを使うべきか知りたい場合は、変数を取得する対象のドキュメントを確認し、そのメソッドの返還オブジェクトを確認してください。
メソッド
| 名前 | 説明 |
|---|---|
| Contains(String) |
例外をスローせずにインデックスを用いて VariableDispenser コレクションからアイテムを取得できるかどうかを指定します。 |
| Equals(Object) |
2 つのオブジェクト インスタンスが等しいかどうかを判断します。 (継承元 DtsObject) |
| GetHashCode() |
このインスタンスのハッシュ コードを返します。 (継承元 DtsObject) |
| GetQualifiedName(String) |
変数の条件名を返します。 |
| GetVariables(Variables) |
読み取り専用リストと読み書きリストにある変数をロックします。 |
| LockForRead(String) |
読み取り専用アクセスのためにロックされる変数のリストに変数を追加します。 |
| LockForWrite(String) |
読み書きアクセスのためにロックされる変数のリストに変数を追加します。 |
| LockOneForRead(String, Variables) |
変数をリストに入れ、読み取り専用にロックします。 |
| LockOneForWrite(String, Variables) |
変数をリストに入れ、読み書きアクセスのためにロックします。 |
| Reset() |
GetVariables(Variables)呼び出しが失敗すると、読み取り専用リストと読み書きリストの両方をクリアします。 |