public async Task GetGameTables(GetGameTablesParams @params) { try { var result = _gameTableService.GetGameTablesTest(); await Clients.Caller.ReceiveGameTables(new ReceiveGameTablesParams() { GameTables = result.ToList(), RequestId = @params.RequestId, Succeeded = true }); } catch (Exception ex) { _logger.LogError(ex, "Ошибка возврата игровых столов"); await Clients.Caller.ReceiveGameTables(new ReceiveGameTablesParams() { GameTables = null, RequestId = @params.RequestId, Succeeded = false }); } }
public Promise <ReceiveGameTablesParams> GetGameTables(GetGameTablesParams @params) { if (_isDisposed) { throw new ObjectDisposedException("Ресурсы объекта были освобождены"); } if (_hubConnection == null) { throw new Exception("Подключение еще не было создано"); } if (_hubConnection.State != HubConnectionState.Connected) { throw new Exception($"Подключение еще не установлено. Статус - {_hubConnection.State}"); } var promise = new Promise <ReceiveGameTablesParams>(@params.RequestId, () => { _hubConnection.InvokeAsync(nameof(IMainHubApi.GetGameTables), @params); }); ReceivedGameTables += promise.OnCopleted; return(promise); }