IDynamicKeyProviderConcept::GetKey メソッド (dbgmodel.h)
動的キー プロバイダーの GetKey メソッドは、主に IModelObject GetKey メソッドのオーバーライドです。 動的キー プロバイダーは、キーの値とそのキーに関連付けられているメタデータを返す必要があります。 キーが存在しない場合 (ただし、他のエラーは発生しません)、プロバイダーは hasKey パラメーターで false を返し、S_OKで成功する必要があります。 この呼び出しに失敗すると、キーをフェッチできなかったと見なされ、親モデル チェーンを介してキーの検索が明示的に停止されます。 hasKey と success で false を返すと、キーの検索が続行されます。
GetKey がボックス化されたプロパティ アクセサーをキーとして返すのは完全に有効であることに注意してください。 これは、プロパティ アクセサーを返 IModelObject の GetKey メソッドと意味的に同じです。
構文
HRESULT GetKey(
IModelObject *contextObject,
PCWSTR key,
IModelObject **keyValue,
IKeyStore **metadata,
bool *hasKey
);
パラメーター
contextObject
キーを取得するインスタンス オブジェクト (このポインター)。
key
取得するキーの名前。
keyValue
動的プロバイダーによって決定されたキーの値がここで返されます。 フェッチでエラーが発生し、無効な HRESULT が返された場合は、拡張エラー情報が返される可能性があります。 GetKey メソッドの実装では、プロパティ アクセサー (IModelPropertyAccessor) を返すのが適しています。
metadata
キーに関連付けられているメタデータは、必要に応じてここで返すことができます。
hasKey
動的プロバイダーがキーを持っているかどうかを示します。 プロバイダーにキーがない場合は、ここで false を返して成功する必要があります。
戻り値
このメソッドは、成功または失敗を示す HRESULT を返します。
必要条件
要件 | 価値 |
---|---|
ヘッダー | dbgmodel.h |
関連項目
IDynamicKeyProviderConcept インターフェイス の