ObjectContext.CreateEntityKey(String, Object) Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Skapar entitetsnyckeln för ett specifikt objekt eller returnerar entitetsnyckeln om den redan finns.
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
Parametrar
- entitySetName
- String
Det fullständigt kvalificerade namnet på den entitetsuppsättning som entitetsobjektet tillhör.
- entity
- Object
Objektet som entitetsnyckeln hämtas för.
Returer
Objektets EntityKey .
Undantag
När någon av parametrarna är null.
När entitySetName är tom.
-eller-
När objektets entity typ inte finns i entitetsuppsättningen.
-eller-
När inte entitySetName är fullständigt kvalificerad.
När entitetsnyckeln inte kan konstrueras korrekt baserat på de angivna parametrarna.
Exempel
I det här exemplet CreateEntityKey används för att hämta entitetsnyckeln för ett befintligt objekt.
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();
}
}
Kommentarer
Om det inte finns någon EntityKey för entityCreateEntityKey skapar metoden en ny nyckel för den.
Den här metoden används för att avgöra om ett objekt som har samma EntityKey är redan kopplat till ObjectContext. Om ett objekt som har samma EntityKey redan är kopplat genereras ett undantag. CreateEntityKey Använd metoden för att försöka hämta EntityKey det frånkopplade objektet innan du anropar Attach metoden.