Udostępnij za pośrednictwem


ObjectContext.TryGetObjectByKey(EntityKey, Object) Metoda

Definicja

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 valuenullwartość .

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 falseObjectNotFoundException obiektu .

Dotyczy

Zobacz też