ObjectContext.TryGetObjectByKey(EntityKey, Object) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定されたエンティティ キーを持つオブジェクトを返します。
public:
bool TryGetObjectByKey(System::Data::EntityKey ^ key, [Runtime::InteropServices::Out] System::Object ^ % value);
public bool TryGetObjectByKey (System.Data.EntityKey key, out object value);
member this.TryGetObjectByKey : System.Data.EntityKey * obj -> bool
Public Function TryGetObjectByKey (key As EntityKey, ByRef value As Object) As Boolean
パラメーター
- key
- EntityKey
検索するオブジェクトのキー。
- value
- Object
このメソッドから制御が戻った時点で、オブジェクトが格納されます。
戻り値
オブジェクトが正常に取得された場合は true
。 key
が一時的である場合、接続が false
である場合、または value
が null
である場合は null
。
例外
key
の互換性のないメタデータ。
key
が null
です。
例
この例では、指定された型のエンティティの を作成 EntityKey し、キーでエンティティを取得しようとします。
using (AdventureWorksEntities context =
new AdventureWorksEntities())
{
Object entity = null;
IEnumerable<KeyValuePair<string, object>> entityKeyValues =
new KeyValuePair<string, object>[] {
new KeyValuePair<string, object>("SalesOrderID", 43680) };
// Create the key for a specific SalesOrderHeader object.
EntityKey key = new EntityKey("AdventureWorksEntities.SalesOrderHeaders", entityKeyValues);
// Get the object from the context or the persisted store by its key.
if (context.TryGetObjectByKey(key, out entity))
{
Console.WriteLine("The requested " + entity.GetType().FullName +
" object was found");
}
else
{
Console.WriteLine("An object with this key " +
"could not be found.");
}
}
注釈
TryGetObjectByKey は、指定された EntityKey を持つオブジェクトを ObjectStateManager から取得しようとします。 オブジェクトが現在オブジェクト コンテキストに読み込まれていない場合は、データ ソースからオブジェクトを返すためにクエリが実行されます。 詳しくは、「オブジェクト クエリ」をご覧ください。
オブジェクトが見つからない場合に TryGetObjectByKey で発生する ObjectNotFoundException の処理を避けるには、GetObjectByKey メソッドを使用します。
このメソッドは、Deleted 状態のオブジェクトを返します。
一時キーを使用してデータ ソースからオブジェクトを取得することはできません。
メソッドはTryGetObjectByKey、 メソッドに標準の .NET TryParse
パターンをGetObjectByKey適用し、 がキャッチされたときに ObjectNotFoundException をfalse
返します。
適用対象
こちらもご覧ください
.NET
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示