ObjectContext.TryGetObjectByKey(EntityKey, Object) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zwraca obiekt, który ma określony klucz jednostki.
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
Parametry
- key
- EntityKey
Klucz obiektu do znalezienia.
- value
- Object
Gdy ta metoda zwróci obiekt , zawiera obiekt .
Zwraca
true
jeśli obiekt został pomyślnie pobrany.
false
key
jeśli parametr jest tymczasowy, połączenie to null
, lub ma value
null
wartość .
Wyjątki
Niezgodne metadane dla elementu key
.
key
to null
.
Przykłady
W tym przykładzie tworzona jest EntityKey jednostka danego typu, a następnie próbuje pobrać jednostkę według klucza.
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.");
}
}
Uwagi
TryGetObjectByKeypróbuje pobrać obiekt, który ma określony EntityKey obiekt z .ObjectStateManager Jeśli obiekt nie jest obecnie załadowany do kontekstu obiektu, zapytanie jest wykonywane w celu zwrócenia obiektu ze źródła danych. Aby uzyskać więcej informacji, zobacz Zapytania dotyczące obiektów.
Użyj metody , TryGetObjectByKey aby uniknąć obsługi wywoływanej ObjectNotFoundException przez GetObjectByKey obiekt, gdy nie można odnaleźć obiektu.
Ta metoda zwróci obiekty w Deleted stanie .
Nie można użyć klucza tymczasowego do zwrócenia obiektu ze źródła danych.
Metoda TryGetObjectByKey stosuje standardowy wzorzec platformy .NET TryParse
dla GetObjectByKey metody, zwracany po przechwyceniu false
ObjectNotFoundException obiektu .