EntityKey.IsTemporary Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
değerinin geçici olup olmadığını EntityKey belirten bir değer alır.
public:
property bool IsTemporary { bool get(); };
public bool IsTemporary { get; }
member this.IsTemporary : bool
Public ReadOnly Property IsTemporary As Boolean
Özellik Değeri
true
EntityKey geçiciyse; değilse, false
.
Açıklamalar
Yeni bir varlık oluşturulduğunda Entity Framework geçici anahtarı tanımlar ve özelliğini olarak true
ayarlarIsTemporary. yöntemini çağırdığınızdaSaveChanges, Entity Framework kalıcı bir anahtar atar ve özelliğini olarak false
ayarlarIsTemporary.
Not
Geçici anahtarlar çerçeve tarafından otomatik olarak oluşturulur; bunlar doğrudan bir kullanıcı tarafından oluşturulamaz.
Geçici anahtarlar, kalıcı anahtarlardan farklı karşılaştırma semantiğine sahiptir:
Geçici anahtarlar başvuru eşitliğini kullanır. Diğer bir deyişle, tam olarak aynı geçici EntityKey örneğe yapılan iki başvuru eşittir, ancak başka EntityKey hiçbir örnek eşit değildir.
Kalıcı anahtarlar, içerdiği anahtar özelliklerinin ve EntitySetdeğerlerini temel alarak eşitliği belirler. Başka bir ifadeyle, varlık kümeleri aynı ve anahtar değerleri eşitse eşit olan iki ayrı EntityKey örneğiniz olabilir.
Buna ek olarak, geçici anahtarların veya anahtar değerleri yoktur EntitySet , ancak kalıcı anahtarlar vardır.
Bir varlığın AcceptChangesObjectStateEntry yöntemi çağrıldığında ve varlık durumundan Added duruma Unchanged geçtiğinde, Entity Framework varlık için yeni bir kalıcı anahtarı otomatik olarak hesaplar ve tüm geçici anahtar başvurularını eşitler.