public CompetitionPostApiModel Map(Mannschaftskampf mannschaftskampf, List <Einzelkampf> einzelkaempfe)
        {
            CompetitionPostApiModel apiModel = new CompetitionPostApiModel
            {
                SaisonId         = mannschaftskampf.SaisonId,
                CompetitionId    = mannschaftskampf.WettkampfId,
                HomePoints       = mannschaftskampf.HeimPunkte.ToString(),
                OpponentPoints   = mannschaftskampf.GastPunkte.ToString(),
                Audience         = mannschaftskampf.AnzahlZuschauer.ToString(),
                EditorComment    = mannschaftskampf.Kommentar,
                RefereeName      = mannschaftskampf.Schiedsrichter_Nachname,
                RefereeGivenname = mannschaftskampf.Schiedsrichter_Vorname,
                StartTime        = mannschaftskampf.EchterKampfbeginn.ToString(@"hh\:mm\:ss"),
                EndTime          = mannschaftskampf.EchtesKampfende.ToString(@"hh\:mm\:ss"),
                BoutList         = MapEinzelkaempfe(einzelkaempfe)
            };

            return(apiModel);
        }
        public async Task <JObject> Sende_Ergebnis_Async(CompetitionPostApiModel apiModel)
        {
            string jsonString = JsonConvert.SerializeObject(apiModel);

            //TODO: Url angeben, sobald bekannt
            string url = _settings.BaseUrl;

            //.SetQueryParam(_settings.JsonReaderService.Key, _settings.JsonReaderService.Value)
            //.SetQueryParam(_settings.TaskOrganisationsmanager.Key, _settings.TaskOrganisationsmanager.Value) //tk = task | jr:cs = Json-Reader Service | OM = Organisationsmanager
            //.SetQueryParam("op", operation); //op ~ operation

            _logger.Debug($"RdbService: GET {url}");
            HttpResponse httpResponse = await _httpService.Post_Json_Async(new Uri(url), jsonString);

            _logger.Debug($"RdbService: Response = {httpResponse.Result}");

            JObject parsedJson = JObject.Parse(httpResponse.Result);

            return(parsedJson);
        }
        public async Task Uebermittle_Ergebnis_Async(Mannschaftskampf mannschaftskampf, List <Einzelkampf> einzelkaempfe)
        {
            CompetitionPostApiModel apiModel = _mapper.Map(mannschaftskampf, einzelkaempfe);

            List <ValidationResult> validationResults = new List <ValidationResult>();
            bool isValid = ValidationHelper.IsValidate(apiModel, fehlerListe => validationResults = fehlerListe);

            if (!isValid)
            {
                List <KeyValuePair <string, string> > validierungsFehler = new List <KeyValuePair <string, string> >();
                foreach (var validationResult in validationResults)
                {
                    validierungsFehler.AddRange(validationResult.MemberNames.Select(member =>
                                                                                    new KeyValuePair <string, string>(member, validationResult.ErrorMessage)));
                }

                throw new ApiValidierungException(validierungsFehler);
            }

            //TODO: Impl. finalisieren
            var httpResponse = await _rdbService.Sende_Ergebnis_Async(apiModel : apiModel);
        }