using System.Collections.Generic; using System.Text; using System.Threading.Tasks; using Volo.Abp.DependencyInjection; using Volo.Abp.Http.Client.ClientProxying; using Volo.Abp.Http.Modeling; using Volo.Abp.TestApp.Application.Dto; namespace Volo.Abp.Http.DynamicProxying; public class TestObjectToQueryString : IObjectToQueryString>, ITransientDependency { public Task ConvertAsync(ActionApiDescriptionModel actionApiDescription, ParameterApiDescriptionModel parameterApiDescription, List values) { if (values.IsNullOrEmpty()) { return Task.FromResult(null); } var sb = new StringBuilder(); for (var i = 0; i < values.Count; i++) { sb.Append($"NameValues[{i}].Name={values[i].Name}&NameValues[{i}].Value={values[i].Value}&"); foreach (var item in values[i].ExtraProperties) { sb.Append($"NameValues[{i}].ExtraProperties[{item.Key}]={item.Value}&"); } } sb.Remove(sb.Length - 1, 1); return Task.FromResult(sb.ToString()); } }