Blazor: propiedad WebEventDescriptor.EventArgsType reemplazada

La clase WebEventDescriptor forma parte del protocolo interno de Blazor para comunicar eventos de JavaScript en .NET. El código de la aplicación no suele usar esta clase, pero, en su lugar, sí la utilizan los autores de la plataforma.

A partir de ASP.NET Core 6.0, la propiedad EventArgsType de WebEventDescriptor se reemplaza por una nueva propiedad EventName. Es poco probable que este cambio afecte al código de la aplicación, ya que se trata de un detalle de implementación de plataforma de bajo nivel.

Versión introducida

ASP.NET Core 6.0

Comportamiento anterior

En ASP.NET Core 5.0 y versiones anteriores, la propiedad EventArgsType describe un nombre de categoría no estándar específico de Blazor para grupos de tipos de eventos DOM. Por ejemplo, los eventos click y mousedown se asignan a un valor EventArgsType de mouse. De forma similar, los eventos cut, copy y paste se asignan a un valor EventArgsType de clipboard. Estos nombres de categoría se usan para determinar el tipo de .NET que se va a usar para deserializar los datos de los argumentos de eventos entrantes.

Comportamiento nuevo

A partir de ASP.NET Core 6.0, la nueva propiedad EventName solo especifica el nombre del evento original. Por ejemplo, click, mousedown, cut, copy o paste. Ya no es necesario proporcionar un nombre de categoría específico de Blazor. Por ese motivo, se quita la propiedad anterior EventArgsType.

Motivo del cambio

En la solicitud de incorporación de cambios dotnet/aspnetcore#29993, se presentó la compatibilidad con las clases de argumentos de eventos personalizados. Como parte de esta compatibilidad, el marco de trabajo ya no se basa en todos los eventos englobados dentro de conjunto predefinido de categorías. El marco de trabajo ahora solo necesita conocer el nombre de evento original.

El código de la aplicación no debe verse afectado y no es necesario modificarlo.

Si crea una plataforma de representación de Blazor personalizada, puede que tenga que actualizar el mecanismo para enviar eventos a Renderer. Reemplace cualquier regla codificada de forma rígida sobre las categorías de eventos con una lógica más sencilla que proporcione el nombre de evento sin formato original.

API afectadas

WebEventDescriptor.EventArgsType