Bagikan melalui


EntityKey Konstruktor

Definisi

Menginisialisasi instans baru kelas EntityKey.

Overload

EntityKey()

Menginisialisasi instans baru kelas EntityKey.

EntityKey(String, IEnumerable<KeyValuePair<String,Object>>)

Menginisialisasi instans EntityKey baru kelas dengan nama set entitas dan koleksi generik KeyValuePair .

EntityKey(String, IEnumerable<EntityKeyMember>)

Menginisialisasi instans EntityKey baru kelas dengan nama set entitas dan IEnumerable<T> kumpulan EntityKeyMember objek.

EntityKey(String, String, Object)

Menginisialisasi instans EntityKey baru kelas dengan nama set entitas dan pasangan kunci entitas tertentu.

EntityKey()

Menginisialisasi instans baru kelas EntityKey.

public:
 EntityKey();
public EntityKey ();
Public Sub New ()

Berlaku untuk

EntityKey(String, IEnumerable<KeyValuePair<String,Object>>)

Menginisialisasi instans EntityKey baru kelas dengan nama set entitas dan koleksi generik KeyValuePair .

public:
 EntityKey(System::String ^ qualifiedEntitySetName, System::Collections::Generic::IEnumerable<System::Collections::Generic::KeyValuePair<System::String ^, System::Object ^>> ^ entityKeyValues);
public EntityKey (string qualifiedEntitySetName, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<string,object>> entityKeyValues);
new System.Data.EntityKey : string * seq<System.Collections.Generic.KeyValuePair<string, obj>> -> System.Data.EntityKey
Public Sub New (qualifiedEntitySetName As String, entityKeyValues As IEnumerable(Of KeyValuePair(Of String, Object)))

Parameter

qualifiedEntitySetName
String

String yang merupakan nama set entitas yang memenuhi syarat oleh nama kontainer entitas.

entityKeyValues
IEnumerable<KeyValuePair<String,Object>>

Koleksi generik KeyValuePair .

Setiap pasangan kunci/nilai memiliki nama properti sebagai kunci dan nilai properti tersebut sebagai nilai. Harus ada satu pasangan untuk setiap properti yang merupakan bagian EntityKeydari . Urutan pasangan kunci/nilai tidak penting, tetapi setiap properti kunci harus disertakan. Nama properti adalah nama sederhana yang tidak memenuhi syarat dengan nama jenis entitas atau nama skema.

Contoh

Contoh ini menunjukkan kepada Anda cara membuat dan menggunakan EntityKey.

using (AdventureWorksEntities context =
    new AdventureWorksEntities())
{
    try
    {
        // Create the key that represents the order.
        EntityKey orderKey =
            new EntityKey("AdventureWorksEntities.SalesOrderHeaders",
                "SalesOrderID", orderId);

        // Create the stand-in SalesOrderHeader object
        // based on the specified SalesOrderID.
        SalesOrderHeader order = new SalesOrderHeader();
        order.EntityKey = orderKey;

        // Assign the ID to the SalesOrderID property to matche the key.
        order.SalesOrderID = (int)orderKey.EntityKeyValues[0].Value;

        // Attach the stand-in SalesOrderHeader object.
        context.SalesOrderHeaders.Attach(order);

        // Create a new SalesOrderDetail object.
        // You can use the static CreateObjectName method (the Entity Framework
        // adds this method to the generated entity types) instead of the new operator:
        // SalesOrderDetail.CreateSalesOrderDetail(1, 0, 2, 750, 1, (decimal)2171.2942, 0, 0,
        //                                         Guid.NewGuid(), DateTime.Today));
        SalesOrderDetail detail = new SalesOrderDetail
        {
            SalesOrderID = orderId,
            SalesOrderDetailID = 0,
            OrderQty = 2,
            ProductID = 750,
            SpecialOfferID = 1,
            UnitPrice = (decimal)2171.2942,
            UnitPriceDiscount = 0,
            LineTotal = 0,
            rowguid = Guid.NewGuid(),
            ModifiedDate = DateTime.Now
        };

        order.SalesOrderDetails.Add(detail);

        context.SaveChanges();
    }
    catch (InvalidOperationException)
    {
        Console.WriteLine("Ensure that the key value matches the value of the object's ID property.");
    }
    catch (UpdateException)
    {
        Console.WriteLine("An error has occurred. Ensure that an object with the '{0}' key value exists.",
        orderId);
    }
}

Berlaku untuk

EntityKey(String, IEnumerable<EntityKeyMember>)

Menginisialisasi instans EntityKey baru kelas dengan nama set entitas dan IEnumerable<T> kumpulan EntityKeyMember objek.

public:
 EntityKey(System::String ^ qualifiedEntitySetName, System::Collections::Generic::IEnumerable<System::Data::EntityKeyMember ^> ^ entityKeyValues);
public EntityKey (string qualifiedEntitySetName, System.Collections.Generic.IEnumerable<System.Data.EntityKeyMember> entityKeyValues);
new System.Data.EntityKey : string * seq<System.Data.EntityKeyMember> -> System.Data.EntityKey
Public Sub New (qualifiedEntitySetName As String, entityKeyValues As IEnumerable(Of EntityKeyMember))

Parameter

qualifiedEntitySetName
String

String yang merupakan nama set entitas yang memenuhi syarat oleh nama kontainer entitas.

entityKeyValues
IEnumerable<EntityKeyMember>

Kumpulan IEnumerable<T>EntityKeyMember objek untuk menginisialisasi kunci.

Berlaku untuk

EntityKey(String, String, Object)

Menginisialisasi instans EntityKey baru kelas dengan nama set entitas dan pasangan kunci entitas tertentu.

public:
 EntityKey(System::String ^ qualifiedEntitySetName, System::String ^ keyName, System::Object ^ keyValue);
public EntityKey (string qualifiedEntitySetName, string keyName, object keyValue);
new System.Data.EntityKey : string * string * obj -> System.Data.EntityKey
Public Sub New (qualifiedEntitySetName As String, keyName As String, keyValue As Object)

Parameter

qualifiedEntitySetName
String

String yang merupakan nama set entitas yang memenuhi syarat oleh nama kontainer entitas.

keyName
String

String Yang merupakan nama kunci.

keyValue
Object

Yang Object merupakan nilai kunci.

Contoh

Contoh ini menunjukkan kepada Anda cara membuat dan menggunakan EntityKey.

using (AdventureWorksEntities context =
    new AdventureWorksEntities())
{
    try
    {
        // Create the key that represents the order.
        EntityKey orderKey =
            new EntityKey("AdventureWorksEntities.SalesOrderHeaders",
                "SalesOrderID", orderId);

        // Create the stand-in SalesOrderHeader object
        // based on the specified SalesOrderID.
        SalesOrderHeader order = new SalesOrderHeader();
        order.EntityKey = orderKey;

        // Assign the ID to the SalesOrderID property to matche the key.
        order.SalesOrderID = (int)orderKey.EntityKeyValues[0].Value;

        // Attach the stand-in SalesOrderHeader object.
        context.SalesOrderHeaders.Attach(order);

        // Create a new SalesOrderDetail object.
        // You can use the static CreateObjectName method (the Entity Framework
        // adds this method to the generated entity types) instead of the new operator:
        // SalesOrderDetail.CreateSalesOrderDetail(1, 0, 2, 750, 1, (decimal)2171.2942, 0, 0,
        //                                         Guid.NewGuid(), DateTime.Today));
        SalesOrderDetail detail = new SalesOrderDetail
        {
            SalesOrderID = orderId,
            SalesOrderDetailID = 0,
            OrderQty = 2,
            ProductID = 750,
            SpecialOfferID = 1,
            UnitPrice = (decimal)2171.2942,
            UnitPriceDiscount = 0,
            LineTotal = 0,
            rowguid = Guid.NewGuid(),
            ModifiedDate = DateTime.Now
        };

        order.SalesOrderDetails.Add(detail);

        context.SaveChanges();
    }
    catch (InvalidOperationException)
    {
        Console.WriteLine("Ensure that the key value matches the value of the object's ID property.");
    }
    catch (UpdateException)
    {
        Console.WriteLine("An error has occurred. Ensure that an object with the '{0}' key value exists.",
        orderId);
    }
}

Berlaku untuk