Önceki sürümlerde, işlenmeyen bir BackgroundService özel durum oluştuğunda, özel durum kaybolur ve hizmet yanıt vermiyor gibi görünür. .NET 6, özel durumu günlüğe kaydetme ve konağı durdurma yoluyla bu davranışı düzeltir.
Açıklama değiştirildi
Önceki .NET sürümlerinde, geçersiz BackgroundService.ExecuteAsync(CancellationToken) kılmadan bir özel durum oluştuğunda, özel durum kaybolur ve hizmet yanıt vermiyor gibi görünür. Konak çalışmaya devam eder ve hiçbir ileti günlüğe kaydedilmez.
.NET 6'dan başlayarak, geçersiz BackgroundService.ExecuteAsync(CancellationToken) kılmadan bir özel durum oluştuğunda, özel durum geçerli ILoggeröğesine kaydedilir. Varsayılan olarak, işlenmeyen bir özel durumla karşılaşıldığında konak durdurulur.
Sürüm kullanıma sunulmuştur
.NET 6
Değişiklik nedeni
Yeni davranış, işlenmeyen özel durumlarla karşılaşıldığında diğer uygulama modellerinin davranışıyla tutarlıdır. Geliştiriciler hatayla karşılaştığında ancak günlüğe hiçbir şey kaydedilmediğinde BackgroundService de bu durum geliştiricilerin kafasını karıştırır. İşlenmeyen özel durumlar yoksayılmaması gerektiğinden en iyi varsayılan davranış konağı durdurmaktır. Dikkat edilmesi gereken bir sorunu belirtir.
Bu içeriğin kaynağı GitHub'da bulunabilir; burada ayrıca sorunları ve çekme isteklerini oluşturup gözden geçirebilirsiniz. Daha fazla bilgi için katkıda bulunan kılavuzumuzu inceleyin.
.NET geri bildirimi
.NET, açık kaynak bir projedir. Geri bildirim sağlamak için bir bağlantı seçin:
Bu modül, bir C# konsol uygulaması için kod doğrulama işleminde size yol gösterir. Uygulamalı etkinlikler mantıksal sorunları tanımlama, uygulamada hata ayıklama ve özel durum işleme uygulama deneyimi sağlar. Adım adım yönergeler sağlanır.