コード例 #1
0
        public void Handle(CreateRandomMatchRequest request)
        {
            try
            {
                if (!String.IsNullOrEmpty(request.DateTimeMatch.ToString()))
                {
                    var firstTeam  = GetRandomTeam();
                    var secondTeam = GetRandomTeam();

                    while (firstTeam.Id == secondTeam.Id)
                    {
                        secondTeam = GetRandomTeam();
                    }

                    _matchRepo.Insert(new Match
                    {
                        FirstTeam         = GetTeamById(firstTeam.Id),
                        SecondTeam        = GetTeamById(secondTeam.Id),
                        DateTimeMatch     = request.DateTimeMatch,
                        ScoreOfFirstTeam  = 0,
                        ScoreOfSecondTeam = 0,
                        IsDeleted         = false
                    });

                    var response = new CreateRandomMatchResponse(true);
                    Sender.Tell(response);

                    _logger.Info("Create Random Match successfull: {0}", request.DateTimeMatch);
                }
                else
                {
                    var response = new CreateRandomMatchResponse(false);
                    Sender.Tell(response);

                    _logger.Info("Couldn't create Random Match: {0}: All fields are required", request.DateTimeMatch);
                }
            }
            catch (Exception ex)
            {
                var response = new CreateRandomMatchResponse(false);
                Sender.Tell(response);
                _logger.Info("Couldn't create Random Match: {0}: {1}", request.DateTimeMatch, ex.Message);
            }
        }
コード例 #2
0
        public async Task <CreateRandomMatchResponse> CreateRandomMatch(string dateTimeMatch)
        {
            var request = new CreateRandomMatchRequest(dateTimeMatch);

            return(await _matchActor.Ask <CreateRandomMatchResponse>(request));
        }