DbContext.SaveChangesAsync Yöntem
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.
Aşırı Yüklemeler
SaveChangesAsync(Boolean, CancellationToken) |
Bu bağlamda yapılan tüm değişiklikleri veritabanına kaydeder. |
SaveChangesAsync(CancellationToken) |
Bu bağlamda yapılan tüm değişiklikleri veritabanına kaydeder. |
SaveChangesAsync(Boolean, CancellationToken)
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
Bu bağlamda yapılan tüm değişiklikleri veritabanına kaydeder.
public virtual System.Threading.Tasks.Task<int> SaveChangesAsync (bool acceptAllChangesOnSuccess, System.Threading.CancellationToken cancellationToken = default);
abstract member SaveChangesAsync : bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
override this.SaveChangesAsync : bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overridable Function SaveChangesAsync (acceptAllChangesOnSuccess As Boolean, Optional cancellationToken As CancellationToken = Nothing) As Task(Of Integer)
Parametreler
- acceptAllChangesOnSuccess
- Boolean
Değişiklikler veritabanına başarıyla gönderildikten sonra çağrılıp çağrılmayacağını AcceptAllChanges() gösterir.
- cancellationToken
- CancellationToken
CancellationToken Görevin tamamlanmasını beklerken gözlemlemek için bir.
Döndürülenler
Zaman uyumsuz kaydetme işlemini temsil eden görev. Görev sonucu, veritabanına yazılan durum girdilerinin sayısını içerir.
Özel durumlar
Veritabanına kaydedilirken bir hatayla karşılaşıldı.
Veritabanına kaydedilirken eşzamanlılık ihlaliyle karşılaşılır. Kaydetme sırasında beklenmeyen sayıda satır etkilendiğinde eşzamanlılık ihlali oluşur. Bunun nedeni genellikle veritabanındaki verilerin belleğe yüklendiğinden beri değiştirilmesidir.
CancellationToken İptal edildiyse.
Açıklamalar
Bu yöntem, temel alınan veritabanına kaydetmeden önce varlık örneklerinde yapılan değişiklikleri bulmak için otomatik olarak çağrısı DetectChanges() yapacaktır. Bu, aracılığıyla AutoDetectChangesEnableddevre dışı bırakılabilir.
Entity Framework Core, aynı DbContext örneğinde çalıştırılan birden çok paralel işlemi desteklemez. Buna hem zaman uyumsuz sorguların paralel yürütülmesi hem de birden çok iş parçacığından açık eş zamanlı kullanım dahildir. Bu nedenle, her zaman zaman uyumsuz çağrıları hemen bekleyin veya paralel olarak yürütülen işlemler için ayrı DbContext örnekleri kullanın. Daha fazla bilgi ve örnek için bkz. DbContext iş parçacığı oluşturma sorunlarını önleme .
Daha fazla bilgi ve örnek için bkz. EF Core'da veri kaydetme .
Şunlara uygulanır
SaveChangesAsync(CancellationToken)
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
- Kaynak:
- DbContext.cs
Bu bağlamda yapılan tüm değişiklikleri veritabanına kaydeder.
public virtual System.Threading.Tasks.Task<int> SaveChangesAsync (System.Threading.CancellationToken cancellationToken = default);
abstract member SaveChangesAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
override this.SaveChangesAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overridable Function SaveChangesAsync (Optional cancellationToken As CancellationToken = Nothing) As Task(Of Integer)
Parametreler
- cancellationToken
- CancellationToken
CancellationToken Görevin tamamlanmasını beklerken gözlemlemek için bir.
Döndürülenler
Zaman uyumsuz kaydetme işlemini temsil eden görev. Görev sonucu, veritabanına yazılan durum girdilerinin sayısını içerir.
Özel durumlar
Veritabanına kaydedilirken bir hatayla karşılaşıldı.
Veritabanına kaydedilirken eşzamanlılık ihlaliyle karşılaşılır. Kaydetme sırasında beklenmeyen sayıda satır etkilendiğinde eşzamanlılık ihlali oluşur. Bunun nedeni genellikle veritabanındaki verilerin belleğe yüklendiğinden beri değiştirilmesidir.
CancellationToken İptal edildiyse.
Açıklamalar
Bu yöntem, temel alınan veritabanına kaydetmeden önce varlık örneklerinde yapılan değişiklikleri bulmak için otomatik olarak çağrısı DetectChanges() yapacaktır. Bu, aracılığıyla AutoDetectChangesEnableddevre dışı bırakılabilir.
Entity Framework Core, aynı DbContext örneğinde çalıştırılan birden çok paralel işlemi desteklemez. Buna hem zaman uyumsuz sorguların paralel yürütülmesi hem de birden çok iş parçacığından açık eş zamanlı kullanım dahildir. Bu nedenle, her zaman zaman uyumsuz çağrıları hemen bekleyin veya paralel olarak yürütülen işlemler için ayrı DbContext örnekleri kullanın. Daha fazla bilgi ve örnek için bkz. DbContext iş parçacığı oluşturma sorunlarını önleme .
Daha fazla bilgi ve örnek için bkz. EF Core'da veri kaydetme .
Şunlara uygulanır
Entity Framework