Bagikan melalui


ObjectContext.CreateEntityKey(String, Object) Metode

Definisi

Membuat kunci entitas untuk objek tertentu, atau mengembalikan kunci entitas jika sudah ada.

public:
 System::Data::EntityKey ^ CreateEntityKey(System::String ^ entitySetName, System::Object ^ entity);
public System.Data.EntityKey CreateEntityKey (string entitySetName, object entity);
member this.CreateEntityKey : string * obj -> System.Data.EntityKey
Public Function CreateEntityKey (entitySetName As String, entity As Object) As EntityKey

Parameter

entitySetName
String

Nama entitas yang sepenuhnya memenuhi syarat diatur ke tempat objek entitas berada.

entity
Object

Objek tempat kunci entitas diambil.

Mengembalikan

Objek EntityKey .

Pengecualian

Ketika salah satu parameter adalah null.

Ketika entitySetName kosong.

-atau-

Ketika jenis entity objek tidak ada dalam set entitas.

-atau-

entitySetName Ketika tidak sepenuhnya memenuhi syarat.

Ketika kunci entitas tidak dapat berhasil dibangun berdasarkan parameter yang disediakan.

Contoh

Dalam contoh ini, CreateEntityKey digunakan untuk mengambil kunci entitas objek yang ada.

private static void ApplyItemUpdates(SalesOrderDetail updatedItem)
{
    // Define an ObjectStateEntry and EntityKey for the current object.
    EntityKey key = default(EntityKey);
    object originalItem = null;

    using (AdventureWorksEntities context = new AdventureWorksEntities())
    {
        // Create the detached object's entity key.
        key = context.CreateEntityKey("SalesOrderDetails", updatedItem);

        // Get the original item based on the entity key from the context
        // or from the database.
        if (context.TryGetObjectByKey(key, out originalItem))
        {
            // Call the ApplyCurrentValues method to apply changes
            // from the updated item to the original version.
            context.ApplyCurrentValues(key.EntitySetName, updatedItem);
        }

        context.SaveChanges();
    }
}

Keterangan

EntityKey Jika tidak ada untuk entity, CreateEntityKey metode membuat kunci baru untuk itu.

Metode ini digunakan untuk menentukan apakah objek yang memiliki hal yang sama EntityKey sudah dilampirkan ke ObjectContext. Jika objek yang memiliki hal yang sama EntityKey sudah dilampirkan, pengecualian akan dinaikkan. CreateEntityKey Gunakan metode untuk mencoba mengambil EntityKey objek yang dilepas sebelum memanggil Attach metode .

Berlaku untuk