Udostępnij za pośrednictwem


Blazor: WebEventDescriptor.EventArgsType zastąpiono właściwość

Klasa WebEventDescriptor jest częścią wewnętrznego Blazorprotokołu do komunikowania zdarzeń z języka JavaScript do platformy .NET. Ta klasa nie jest zwykle używana przez kod aplikacji, ale raczej przez autorów platformy.

Począwszy od ASP.NET Core 6.0, EventArgsType właściwość on WebEventDescriptor jest zastępowana przez nową EventName właściwość. Ta zmiana jest mało prawdopodobne, aby wpłynąć na kod aplikacji, ponieważ jest to szczegóły implementacji platformy niskiego poziomu.

Wprowadzona wersja

ASP.NET Core 6.0

Stare zachowanie

W ASP.NET Core 5.0 i starszych właściwość EventArgsType opisuje niestandardową nazwę Blazorkategorii dla grup typów zdarzeń DOM. Na przykład zdarzenia click i mousedown zostały zamapowane na EventArgsType wartość mouse. Podobnie zdarzenia cut, copyi paste są mapowane na EventArgsType wartość clipboard. Te nazwy kategorii służą do określania typu platformy .NET do deserializacji przychodzących danych argumentów zdarzeń.

Nowe zachowanie

Począwszy od ASP.NET Core 6.0, nowa właściwość EventName określa tylko nazwę oryginalnego zdarzenia. Na przykład , click, mousedowncut, , copylub paste. Nie trzeba już podawać Blazor-konkretnej nazwy kategorii. Z tego powodu stara właściwość EventArgsType zostanie usunięta.

Przyczyna wprowadzenia zmiany

W żądaniu ściągnięcia dotnet/aspnetcore#29993 wprowadzono obsługę niestandardowych klas argumentów zdarzeń. W ramach tej obsługi struktura nie opiera się już na wszystkich zdarzeniach pasujących do wstępnie zdefiniowanego zestawu kategorii. Platforma musi teraz znać tylko oryginalną nazwę zdarzenia.

Nie ma to wpływu na kod aplikacji i nie trzeba ich zmieniać.

W przypadku tworzenia niestandardowej Blazor platformy renderowania może być konieczne zaktualizowanie mechanizmu wysyłania zdarzeń do elementu Renderer. Zastąp wszystkie zakodowane na stałe reguły dotyczące kategorii zdarzeń prostszą logiką, która dostarcza oryginalną, nieprzetworzonej nazwy zdarzenia.

Dotyczy interfejsów API

WebEventDescriptor.EventArgsType