EventSource-visszahívási viselkedés

Egy EventCommand.Disable esetén a EventSource most letiltva van megjelölve, mielőtt a visszahívás megtörténik.

Előző viselkedés

Korábban a EventSource.OnEventCommand(EventCommandEventArgs) visszahívást a EventCommand.Disable beállítás m_eventSourceEnabled=falseelőtt adták ki.

Ez azt jelentette, hogy EventSource.IsEnabled() visszaadta true egy OnEventCommand(EventCommandEventArgs) visszahívásban a felhasználó EventSource számára, még akkor is, ha a parancs a EventSource letiltásához vezetett. A visszahívás azután történt, hogy az események küldésének lehetősége ki lett kapcsolva, így még akkor sem írták meg, ha egy EventSource eseményt próbáltak elindítani.

Új viselkedés

Most a EventSource rendszer letiltottként van megjelölve, mielőtt a visszahívást kibocsátanák egy EventCommand.Disable.

Bevezetett verzió

  • .NET 6-karbantartás
  • .NET 7-szervizelés

A kompatibilitástörő változás típusa

Ez a változás viselkedésbeli változás.

A változás oka

Ez a módosítás több EventCounter példány támogatásához szükséges volt. A több példány használatát több ügyfél is igényelte.

Emellett EventCommand.Enable mindig konzisztens nézetet adott ki: EventSource.IsEnabled() pontosan jelenti az engedélyezett állapotot, és EventSource eseményeket írhat a OnEventCommand visszahívásból. Ez a módosítás konzisztenssé teszi a EventCommand.Disable viselkedést a következővel EventCommand.Enable: .

Nem valószínű, hogy van olyan forgatókönyv, amelyben az előző viselkedést kívánják, és nem lehet visszaállítani a viselkedést.

Érintett API-k