public Result <PlayersDto> GetPlayers(Maybe <GetPlayersCommand> command)
        {
            var filters = new PlayersFilter();

            var dto = command.ToResult("Command is optional")
                      .OnSuccess(x => filters = this.mapper.Map <PlayersFilter>(x))
                      .OnBoth(x => repository.GetFilteredPlayers(filters))
                      .ToResult("Players cannot be null.")
                      .OnSuccess(s => mapper.Map(s, new PlayersDto()))
                      .Ensure(s => s.HasPlayers, "No players found.");

            return(dto);
        }