EventSource geri çağırma davranışı
bir EventCommand.DisableEventSource için, artık geri arama verilmeden önce devre dışı olarak işaretlenir.
Önceki davranış
Daha önce, EventSource.OnEventCommand(EventCommandEventArgs) ayarından m_eventSourceEnabled=false
önce için EventCommand.Disable geri arama verilmişti.
Bu, EventSource.IsEnabled() komutu devre dışı bırakılmasına OnEventCommand(EventCommandEventArgs) neden olsa bile bir kullanıcı EventSourceiçin geri çağırmada döndürüldü true
EventSource
anlamına geliyordu. Geri çağırma, olayları gönderme özelliği kapatıldıktan sonra gerçekleşti, bu nedenle bir EventSource
olayı tetiklemeye çalışsa bile yazılmadı.
Yeni davranış
Şimdi, EventSource geri çağırma bir EventCommand.Disableiçin verilmeden önce devre dışı olarak işaretlenir.
Sürüm kullanıma sunulmuştur
- .NET 6 bakımı
- .NET 7 bakımı
Hataya neden olan değişikliğin türü
Bu değişiklik davranışsal bir değişikliktir.
Değişiklik nedeni
Bu değişiklik birden çok EventCounter örneği desteklemek için gerekliydi. Birden çok örneğe sahip olma özelliği birden çok müşteri tarafından istendi.
Buna ek olarak, EventCommand.Enable her zaman tutarlı bir görünüm yayınladı: EventSource.IsEnabled() etkin durumu doğru raporlar ve EventSource
geri aramadan OnEventCommand
olaylar yazabilir. Bu değişiklik davranışı ile EventCommand.Enable
tutarlı hale getirirEventCommand.Disable
.
Önerilen eylem
Önceki davranışın istendiği bir senaryo olması olası değildir ve davranışı geri döndürmenin bir yolu yoktur.