From 25e0eddfdb2d5ba3d99b5e0a4025e932c43a122d Mon Sep 17 00:00:00 2001 From: pitzm Date: Tue, 17 Mar 2026 11:29:03 +0100 Subject: [PATCH] =?UTF-8?q?ZUGFeRDRESTService:=20HttpPost-Parameter=20ande?= =?UTF-8?q?rs=20abfragen.=20Es=20ist=20immer=20nur=20ein=20Parameter=20m?= =?UTF-8?q?=C3=B6glich?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/ValidationController.cs | 35 ++++++++++++++----- 1 file changed, 27 insertions(+), 8 deletions(-) diff --git a/WEBSERVICES/ZUGFeRDRESTService/Controllers/ValidationController.cs b/WEBSERVICES/ZUGFeRDRESTService/Controllers/ValidationController.cs index c7029f79..4bd3751c 100644 --- a/WEBSERVICES/ZUGFeRDRESTService/Controllers/ValidationController.cs +++ b/WEBSERVICES/ZUGFeRDRESTService/Controllers/ValidationController.cs @@ -9,6 +9,7 @@ using System.Data; using System.Data.SqlClient; using System.IO; using System.Linq; +using System.Net.Http; using System.Text.RegularExpressions; using System.Xml.Linq; using static DigitalData.Modules.Interfaces.Exceptions; @@ -209,36 +210,54 @@ namespace ZUGFeRDRESTService.Controllers /// This is the email address which the user supplied /// This is language code which the user supplied (en-US, de-DE) [HttpPost] - public ValidationResponse Post(IFormFile file, string user_id, string language_id = null) + //public ValidationResponse Post(IFormFile file, StringContent user_id, StringContent language_id = null) + public ValidationResponse Post(IFormCollection collection) { _logger.Info("Start processing request to ValidationController"); ZugferdResult oZugferdResult = null; CheckPropertyValuesResult oPropertyResult = new CheckPropertyValuesResult(); - if (!string.IsNullOrEmpty(user_id)) + var oUserId = string.Empty; // user_id == null ? string.Empty : user_id.ToString(); + var oLanguageId = GERMAN; // language_id == null ? GERMAN : language_id.ToString(); + + IFormFile file = collection.Files[0]; + + foreach (var keyItem in collection.Keys) + { + if (keyItem == "user_id") + { + oUserId = collection[keyItem]; + } + else if (keyItem == "language_id") + { + oLanguageId = collection[keyItem]; + } + } + + if (!string.IsNullOrEmpty(oUserId)) { - _logger.Info("UserID set to [{0}].", user_id); + _logger.Info("UserID set to [{0}].", oUserId); } else { _logger.Info("UserID is empty!"); } - if (string.IsNullOrEmpty(language_id)) + if (string.IsNullOrEmpty(oLanguageId)) { _logger.Info("Language code was empty. Set to default 'de-DE'"); // DEFAULT-Sprache = Deutsch de-DE _UserLanguageCode = GERMAN; } - else if (_AllowedLanguageCodes.Contains(language_id)) + else if (_AllowedLanguageCodes.Contains(oLanguageId)) { - _logger.Info("Language code is allowed. Set to [{0}].", language_id); - _UserLanguageCode = language_id; + _logger.Info("Language code is allowed. Set to [{0}].", oLanguageId); + _UserLanguageCode = oLanguageId; } else { - _logger.Info("Language code was unknown: [{0}]. Set to default 'de-DE'", language_id); + _logger.Info("Language code was unknown: [{0}]. Set to default 'de-DE'", oLanguageId); _UserLanguageCode = GERMAN; }