From fc2e00f5b184017f7d151293572c93663142494f Mon Sep 17 00:00:00 2001 From: Meik Date: Thu, 2 Jul 2026 14:45:10 +0200 Subject: [PATCH] fix: use web api query binding fallback --- F4SDM42WebApi/F4SDM42WebApiController.cs | 21 ++++----------------- 1 file changed, 4 insertions(+), 17 deletions(-) diff --git a/F4SDM42WebApi/F4SDM42WebApiController.cs b/F4SDM42WebApi/F4SDM42WebApiController.cs index 74ea0d3..bfc3d6f 100644 --- a/F4SDM42WebApi/F4SDM42WebApiController.cs +++ b/F4SDM42WebApi/F4SDM42WebApiController.cs @@ -91,25 +91,12 @@ namespace C4IT.F4SD private string GetQueryValue(string name) { - var query = Request?.RequestUri?.Query; - if (string.IsNullOrEmpty(query)) + if (Request == null) return null; - if (query.StartsWith("?")) - query = query.Substring(1); - - foreach (var part in query.Split(new[] { '&' }, StringSplitOptions.RemoveEmptyEntries)) - { - var separatorIndex = part.IndexOf('='); - var key = separatorIndex >= 0 ? part.Substring(0, separatorIndex) : part; - if (!string.Equals(WebUtility.UrlDecode(key), name, StringComparison.OrdinalIgnoreCase)) - continue; - - var value = separatorIndex >= 0 ? part.Substring(separatorIndex + 1) : string.Empty; - return WebUtility.UrlDecode(value.Replace("+", " ")); - } - - return null; + return Request.GetQueryNameValuePairs() + .FirstOrDefault(pair => string.Equals(pair.Key, name, StringComparison.OrdinalIgnoreCase)) + .Value; } private string BindQueryString(string value, string name)