From 273201e7f05947b726d47de035a56e7add2bd621 Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 8 Nov 2021 09:27:45 +0800 Subject: [PATCH] Support `IEnumerable` in `GenerateFormPostDataAsync` method. Resolve #10540 --- .../ClientProxying/ClientProxyRequestPayloadBuilder.cs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/ClientProxying/ClientProxyRequestPayloadBuilder.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/ClientProxying/ClientProxyRequestPayloadBuilder.cs index a91a9904de..69066199f9 100644 --- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/ClientProxying/ClientProxyRequestPayloadBuilder.cs +++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/ClientProxying/ClientProxyRequestPayloadBuilder.cs @@ -1,4 +1,5 @@ using System; +using System.Collections; using System.Collections.Generic; using System.Linq; using System.Net.Http; @@ -151,6 +152,13 @@ namespace Volo.Abp.Http.Client.ClientProxying formData.Add(streamContent, parameter.Name, content.FileName ?? parameter.Name); } } + else if (value.GetType().IsArray || (value.GetType().IsGenericType && value is IEnumerable)) + { + foreach (var item in (IEnumerable) value) + { + formData.Add(new StringContent(item.ToString(), Encoding.UTF8), parameter.Name); + } + } else { formData.Add(new StringContent(value.ToString(), Encoding.UTF8), parameter.Name);