MergeOption Sabit listesi

Tanım

Nesne bağlamı içine yüklenen nesnelerin zaten nesne bağlamındaki nesnelerle nasıl birleştirildiğini belirtir.

public enum class MergeOption
public enum MergeOption
type MergeOption = 
Public Enum MergeOption
Devralma
MergeOption

Alanlar

AppendOnly 0

Nesne bağlamında mevcut olmayan nesneler bağlama eklenir. Bir nesne zaten bağlamdaysa, girdideki nesne özelliklerinin geçerli ve özgün değerlerinin üzerine veri kaynağı değerleri yazılmaz. Nesne girişinin durumu ve girdideki nesnenin özelliklerinin durumu değişmez. AppendOnly varsayılan birleştirme seçeneğidir.

NoTracking 3

Nesneler bir Detached durumda tutulur ve içinde ObjectStateManagerizlenmez. Ancak, Entity Framework tarafından oluşturulan varlıklar ve proxy'leri olan POCO varlıkları, ilgili nesnelerin yüklenmesini kolaylaştırmak için nesne bağlamı için bir başvuru tutar.

OverwriteChanges 1

Nesne bağlamında mevcut olmayan nesneler bağlama eklenir. Bir nesne zaten bağlamdaysa, girdideki nesne özelliklerinin geçerli ve özgün değerlerinin üzerine veri kaynağı değerleri yazılır. Nesne girdisinin durumu olarak Unchangedayarlanır, hiçbir özellik değiştirilmiş olarak işaretlenmez.

PreserveChanges 2

Nesne bağlamında mevcut olmayan nesneler bağlama eklenir.

Açıklamalar

Entity Framework, önbellekte belirli bir varlık anahtarına sahip bir nesnenin yalnızca tek bir örneğini tutar. Nesneler EntityKey , nesnenin kimliğini temsil eden sabit nesnelerdir. Varlık anahtarları, nesne bağlamında kimlik çözümlemesi gerçekleştirmek için kullanılır. Daha fazla bilgi için bkz. Varlık Anahtarları ile Çalışma. Aynı kimliğe sahip bir varlık zaten izleniyorsa, veri kaynağından gelen veriler ve zaten durum yöneticisinde bulunan veriler sorguya MergeOption göre birleştirilir.

Hakkında ek bilgi MergeOption.PreserveChanges

Varlığın durumu ise EntityState.Unchanged, girdideki geçerli ve özgün değerlerin üzerine veri kaynağı değerleri yazılır. Varlığın durumu kalır EntityState.Unchanged ve hiçbir özellik değiştirilmiş olarak işaretlenmez.

Varlığın durumu ise EntityState.Modified, değiştirilen özelliklerin geçerli değerlerinin üzerine veri kaynağı değerleri yazılmaz. Değiştirilmemiş özelliklerin özgün değerlerinin üzerine veri kaynağındaki değerlerle yazılır.

.NET Framework 4'te Entity Framework, değiştirilmemiş özelliklerin geçerli değerlerini veri kaynağından döndürülen değerlerle karşılaştırır. Değerler aynı değilse, özellik değiştirildi olarak işaretlenir.

çağrısı ObjectContext.SaveChangesyaptığınızda veri kaynağında yalnızca değiştirilen özellikler kalıcı olur.

Şunlara uygulanır