Blazor: JSObjectReference и типы JSInProcessObjectReference изменились на внутренние

Новые типы Microsoft.JSInterop.JSObjectReference и Microsoft.JSInterop.JSInProcessObjectReference, появившиеся в ASP.NET Core 5.0 RC1, помечены как internal.

Представленные версии

5.0 RC2

Старое поведение

JSObjectReference можно получить из вызова взаимодействия JavaScript через IJSRuntime. Например:

var jsObjectReference = await JSRuntime.InvokeAsync<JSObjectReference>(...);

Новое поведение

JSObjectReference использует модификатор доступа internal. Вместо этого необходимо использовать интерфейс public IJSObjectReference. Например:

var jsObjectReference = await JSRuntime.InvokeAsync<IJSObjectReference>(...);

JSInProcessObjectReference также помечен как internal и изменен на IJSInProcessObjectReference.

Причина изменения

Это изменение делает функцию взаимодействия JavaScript более совместимой с другими шаблонами в Blazor. IJSObjectReference можно использовать как IJSRuntime в контексте назначения и методов и расширения.

Измените вхождения JSObjectReference и JSInProcessObjectReference на IJSObjectReference и IJSInProcessObjectReferenceсоответственно.

Затронутые API

  • Microsoft.JSInterop.JSObjectReference
  • Microsoft.JSInterop.JSInProcessObjectReference