@using Contracts.Types; @using System.Net; @inject IShogiApi ShogiApi; @code { [Parameter] public Session Session { get; set; } protected override void OnParametersSet() { base.OnParametersSet(); if (Session == null) { throw new ArgumentException($"{nameof(Session)} cannot be null.", nameof(Session)); } } async Task OnClickJoinGame() { var response = await ShogiApi.PatchJoinGame(Session.SessionName); response.EnsureSuccessStatusCode(); } }