Blazor: proprietà WebEventDescriptor.EventArgsType sostituita

La classe WebEventDescriptor fa parte del protocollo interno di Blazor per la comunicazione di eventi da JavaScript a .NET. Questa classe non viene in genere usata dal codice dell'applicazione, ma piuttosto dagli autori della piattaforma.

A partire da ASP.NET Core 6.0, la proprietà EventArgsType su WebEventDescriptor viene sostituita da una nuova proprietà EventName. È improbabile che tale modifica influisca su un codice dell'applicazione, perché si tratta di un dettaglio di implementazione della piattaforma di basso livello.

Versione introdotta

ASP.NET Core 6.0

Comportamento precedente

In ASP.NET Core 5.0 e versioni precedenti, la proprietà EventArgsType descrive un nome di categoria non standard specifico di Blazor per i gruppi di tipi di eventi DOM. Ad esempio, gli eventi click e mousedown sono stati mappati a un valore di EventArgsType su mouse. Analogamente, gli eventi cut, copy e paste vengono mappati a un valore di EventArgsType su clipboard. Questi nomi di categoria vengono usati per determinare il tipo .NET da utilizzare per deserializzare i dati degli argomenti dell'evento in ingresso.

Nuovo comportamento

A partire da ASP.NET Core 6.0, la nuova proprietà EventName specifica solo il nome dell'evento originale. ad esempio, click, mousedown, cut, copy o paste. Non è più necessario specificare un nome di categoria specifico per Blazor. Per questo motivo, la proprietà EventArgsType precedente viene rimossa.

Motivo della modifica

Nella richiesta pull dotnet/aspnetcore#29993 è stato introdotto il supporto per le classi di argomenti di evento personalizzati. Come parte di questo supporto, il framework non si basa più su tutti gli eventi che si adattano a un set predefinito di categorie. Il framework deve ora essere a conoscenza solo del nome dell'evento originale.

Il codice dell'applicazione non deve esserne interessato e non deve essere modificato.

Se si compila una piattaforma di rendering personalizzata Blazor, potrebbe essere necessario aggiornare il meccanismo per l'invio di eventi in Renderer. Sostituire le regole hardcoded relative alle categorie di eventi con una logica più semplice, che fornisca il nome dell'evento originale e non elaborato.

API interessate

WebEventDescriptor.EventArgsType