public void RendererRegistry_Find_ThrowsErrorOnNonWASM() { // Act Exception ex = Assert.Throws <ArgumentException>(() => RendererRegistry.Find(123)); // Assert Assert.Equal("There is no renderer with ID 123.", ex.Message); }
public static Task DispatchEvent(WebEventDescriptor eventDescriptor, string eventArgsJson) { var renderer = RendererRegistry.Find(eventDescriptor.BrowserRendererId); var webEvent = WebEventData.Parse(renderer, eventDescriptor, eventArgsJson); return(renderer.DispatchEventAsync( webEvent.EventHandlerId, webEvent.EventFieldInfo, webEvent.EventArgs)); }
public static Task DispatchEvent(WebEventDescriptor eventDescriptor, string eventArgsJson) { var renderer = RendererRegistry.Find(eventDescriptor.BrowserRendererId); var jsonSerializerOptions = DefaultWebAssemblyJSRuntime.Instance.ReadJsonSerializerOptions(); var webEvent = WebEventData.Parse(renderer, jsonSerializerOptions, eventDescriptor, eventArgsJson); return(renderer.DispatchEventAsync( webEvent.EventHandlerId, webEvent.EventFieldInfo, webEvent.EventArgs)); }
public static async Task DispatchEvent(byte[] eventInfo) { var payload = GetJsonElements(eventInfo); var eventDescriptor = WebEventDescriptorReader.Read(payload.EventDescriptor); var renderer = RendererRegistry.Find(eventDescriptor.BrowserRendererId); var webEvent = WebEventData.Parse( renderer, DefaultWebAssemblyJSRuntime.Instance.ReadJsonSerializerOptions(), eventDescriptor, payload.EventArgs); await renderer.DispatchEventAsync( webEvent.EventHandlerId, webEvent.EventFieldInfo, webEvent.EventArgs); }
public static Task DispatchEvent(WebEventDescriptor eventDescriptor, string eventArgsJson) { var renderer = RendererRegistry.Find(eventDescriptor.BrowserRendererId); // JsonSerializerOptions are tightly bound to the JsonContext. Cache it on first use using a copy // of the serializer settings. if (_jsonContext is null) { var jsonSerializerOptions = DefaultWebAssemblyJSRuntime.Instance.ReadJsonSerializerOptions(); _jsonContext = new(new JsonSerializerOptions(jsonSerializerOptions)); } var webEvent = WebEventData.Parse(renderer, _jsonContext, eventDescriptor, eventArgsJson); return(renderer.DispatchEventAsync( webEvent.EventHandlerId, webEvent.EventFieldInfo, webEvent.EventArgs)); }