Skip to content

Client Query String empty IEnumerable error #5194

@SkipperRoo

Description

@SkipperRoo

Query string is invalid

Previous versions of NSwag have generated valid query string parameters where the IEnumerable contains no elements.

Version 14.4.0 .NET 8

Previous working Version 14.2.0

To Reproduce
With version 14.2.0

if (orderStatus != null)
{
    foreach (var item_ in orderStatus)
    {
      urlBuilder_.Append(System.Uri.EscapeDataString("orderStatus")).Append('=').Append(System.Uri.EscapeDataString(ConvertToString(item_, System.Globalization.CultureInfo.InvariantCulture))).Append('&');
    }
}

With version 14.4.0

  if (orderStatus != null)
  {
   urlBuilder_.Append(Uri.EscapeDataString("orderStatus") + "=");
   foreach (var item_ in orderStatus)
   {
    urlBuilder_.Append(Uri.EscapeDataString(ConvertToString(item_, System.Globalization.CultureInfo.InvariantCulture))).Append(",");
   }
   urlBuilder_.Length--;
   urlBuilder_.Append("&");
  }

Expected behavior
Should get …queryProductOrder?destinationFolderId=FN-0000000816&offset=0&limit=90
With no order status parameter

Whereas 14.4.0 generates this
…queryProductOrder?destinationFolderId=FN-0000000816&orderStatus&offset=0&limit=90

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions