Sdílet prostřednictvím


MergeOption Výčet

Definice

Určuje, jak se objekty načtené do kontextu objektu sloučí s objekty, které jsou již v kontextu objektu.

public enum class MergeOption
public enum MergeOption
type MergeOption = 
Public Enum MergeOption
Dědičnost
MergeOption

Pole

AppendOnly 0

Objekty, které neexistují v kontextu objektu, jsou připojeny ke kontextu. Pokud je objekt již v kontextu, aktuální a původní hodnoty vlastností objektu v položce nejsou přepsány hodnotami zdroje dat. Stav položky objektu a stav vlastností objektu v položce se nemění. AppendOnly je výchozí možnost sloučení.

NoTracking 3

Objekty jsou udržovány ve Detached stavu a nejsou sledovány v objektu ObjectStateManager. Entity vygenerované entity a entity POCO s proxy servery však udržují odkaz na kontext objektu, aby se usnadnilo načítání souvisejících objektů.

OverwriteChanges 1

Objekty, které neexistují v kontextu objektu, jsou připojeny ke kontextu. Pokud je objekt již v kontextu, aktuální a původní hodnoty vlastností objektu v položce jsou přepsány hodnotami zdroje dat. Stav položky objektu je nastaven na Unchanged, žádné vlastnosti nejsou označeny jako změněné.

PreserveChanges 2

Objekty, které neexistují v kontextu objektu, jsou připojeny ke kontextu.

Poznámky

Entity Framework udržuje pouze jednu instanci objektu s konkrétním klíčem entity v mezipaměti. Objekty EntityKey jsou neměnné objekty, které představují identitu objektu. Klíče entit se používají k překladu identity v kontextu objektu. Další informace najdete v tématu Práce s klíči entit. Pokud se již sleduje entita se stejnou identitou, data pocházející ze zdroje dat a data, která už jsou ve správci stavu, se sloučí podle MergeOption dotazu.

Další informace o MergeOption.PreserveChanges

Pokud je EntityState.Unchangedstav entity , aktuální a původní hodnoty v položce se přepíšou hodnotami zdroje dat. Stav entity zůstává EntityState.Unchanged a žádné vlastnosti nejsou označeny jako změněné.

Pokud je EntityState.Modifiedstav entity , aktuální hodnoty upravených vlastností se nepřepíšou hodnotami zdroje dat. Původní hodnoty neupravených vlastností jsou přepsány hodnotami ze zdroje dat.

V rozhraní .NET Framework 4 porovnává Entity Framework aktuální hodnoty neupravených vlastností s hodnotami vrácenými ze zdroje dat. Pokud hodnoty nejsou stejné, vlastnost se označí jako změněná.

Při volání ObjectContext.SaveChangesse do zdroje dat zachovají pouze upravené vlastnosti.

Platí pro