ObjectContext.CreateEntityKey(String, Object) Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Létrehozza az entitáskulcsot egy adott objektumhoz, vagy visszaadja az entitáskulcsot, ha már létezik.
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
Paraméterek
- entitySetName
- String
Annak az entitásnak a teljes neve, amelyhez az entitásobjektum tartozik.
- entity
- Object
Az az objektum, amelyhez az entitáskulcsot lekéri.
Válaszok
Az EntityKey objektum.
Kivételek
Ha bármelyik paraméter .null
Amikor entitySetName üres.
-vagy-
Ha az entity objektum típusa nem létezik az entitáskészletben.
-vagy-
Ha a entitySetName nincs teljesen minősített.
Ha az entitáskulcs nem hozható létre sikeresen a megadott paraméterek alapján.
Példák
Ebben a példában CreateEntityKey egy meglévő objektum entitáskulcsának lekérésére szolgál.
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();
}
}
Megjegyzések
EntityKey Ha a metódus nem létezikentity, a CreateEntityKey metódus létrehoz egy új kulcsot.
Ezzel a módszerrel állapítható meg, hogy egy azonos EntityKey objektum már csatlakoztatva van-e a ObjectContext. Ha egy azonos EntityKey objektum már csatolva van, kivétel keletkezik. CreateEntityKey A metódus meghívása előtt Attach próbálja meg lekérni a EntityKey leválasztott objektumot.