Blazor: WebEventDescriptor.EventArgsType プロパティが置き換えられました
WebEventDescriptor クラスは、JavaScript から .NET にイベントをやり取りするための Blazor の内部プロトコルの一部です。 通常、このクラスは、アプリ コードではなく、プラットフォームの作成者によって使用されます。
ASP.NET Core 6.0 以降、WebEventDescriptor
の EventArgsType プロパティは新しい EventName
プロパティに置き換えられています。 この変更は低レベルのプラットフォーム実装の詳細であるため、アプリ コードに影響する可能性はほとんどありません。
導入されたバージョン
ASP.NET Core 6.0
以前の動作
ASP.NET Core 5.0 以前の場合、プロパティ EventArgsType
には、DOM イベントの種類のグループに対して非標準の Blazor 固有のカテゴリ名を記述します。 たとえば、click
と mousedown
のイベントはいずれも mouse
の EventArgsType
値 にマップされていました。 同様に、cut
、copy
、および paste
のイベントは、clipboard
の EventArgsType
値にマップされます。 これらのカテゴリ名は、受信イベントの引数データを逆シリアル化する際に使用される .NET 型を決定するために使用されます。
新しい動作
ASP.NET Core 6.0 以降、新しいプロパティ EventName
には元のイベントの名前のみを指定します。 たとえば、click
、mousedown
、cut
、copy
、paste
などです。 Blazor 固有のカテゴリ名を指定する必要はなくなりました。 そのため、以前のプロパティ EventArgsType
は削除されました。
変更理由
プル要求 dotnet/aspnetcore#29993 で、カスタムのイベント引数クラスのサポートが導入されました。 このサポートの一部として、フレームワークは、事前に定義されたカテゴリのセットに適合するすべてのイベントに依存しなくなりました。 フレームワークに必要な情報は元のイベント名のみになりました。
推奨アクション
アプリ コードは影響を受けないため、変更する必要はありません。
カスタムの Blazor レンダリング プラットフォームを構築する場合は、必要に応じてイベントを Renderer
にディスパッチするためのメカニズムを更新します。 イベント カテゴリに関するハードコーディングされたルールを、元の生のイベント名を指定する場合よりも簡単なロジックに置き換えます。
影響を受ける API
.NET