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