Share via


ObjectContext.TryGetObjectByKey(EntityKey, Object) Metode

Definisi

Mengembalikan objek yang memiliki kunci entitas yang ditentukan.

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

Parameter

key
EntityKey

Kunci objek yang akan ditemukan.

value
Object

Ketika metode ini kembali, berisi objek .

Mengembalikan

true jika objek berhasil diambil. falsekey jika bersifat sementara, koneksinya adalah null, atau value adalah null.

Pengecualian

Metadata yang tidak kompatibel untuk key.

keyadalah null.

Contoh

Contoh ini membuat EntityKey untuk entitas dari jenis yang diberikan lalu mencoba mengambil entitas berdasarkan kunci.

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.");
    }
}

Keterangan

TryGetObjectByKey mencoba mengambil objek yang memiliki yang ditentukan EntityKey dari ObjectStateManager. Jika objek saat ini tidak dimuat ke dalam konteks objek, kueri dijalankan dalam upaya untuk mengembalikan objek dari sumber data. Untuk informasi selengkapnya, lihat Kueri Objek.

Gunakan metode untuk TryGetObjectByKey menghindari penanganan yang ObjectNotFoundException dimunculkan oleh GetObjectByKey ketika objek tidak dapat ditemukan.

Metode ini akan mengembalikan objek dalam status Deleted .

Kunci sementara tidak dapat digunakan untuk mengembalikan objek dari sumber data.

Metode ini TryGetObjectByKey menerapkan pola .NET TryParse standar untuk GetObjectByKey metode , mengembalikan false ketika ObjectNotFoundException tertangkap.

Berlaku untuk

Lihat juga