diff --git a/modules/openapi-generator/src/main/resources/csharp/libraries/generichost/api.mustache b/modules/openapi-generator/src/main/resources/csharp/libraries/generichost/api.mustache index e44ba3021c5a..380e3f0476d8 100644 --- a/modules/openapi-generator/src/main/resources/csharp/libraries/generichost/api.mustache +++ b/modules/openapi-generator/src/main/resources/csharp/libraries/generichost/api.mustache @@ -393,9 +393,12 @@ namespace {{packageName}}.{{apiPackage}} {{#servers}} {{#-first}} Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("{{url}}"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "{{{path}}}" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "{{{path}}}"); {{/-first}} {{/servers}} {{#constantParams}} @@ -959,4 +962,4 @@ namespace {{packageName}}.{{apiPackage}} } {{/operations}} } -{{/lambda.trimLineBreaks}} \ No newline at end of file +{{/lambda.trimLineBreaks}} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcore/CSharpGenericHostOperationServerTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcore/CSharpGenericHostOperationServerTest.java new file mode 100644 index 000000000000..10f58197dc2c --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcore/CSharpGenericHostOperationServerTest.java @@ -0,0 +1,32 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 + */ +package org.openapitools.codegen.csharpnetcore; + +import org.openapitools.codegen.DefaultGenerator; +import org.openapitools.codegen.config.CodegenConfigurator; +import org.testng.annotations.Test; + +import java.nio.file.Path; + +import static org.openapitools.codegen.TestUtils.assertFileContains; +import static org.openapitools.codegen.TestUtils.newTempFolder; + +public class CSharpGenericHostOperationServerTest { + @Test + public void testOperationServerRetainsPortAndAppendsPath() throws Exception { + Path output = newTempFolder(); + CodegenConfigurator config = new CodegenConfigurator().setGeneratorName("csharp").setLibrary("generichost") + .setInputSpec("src/test/resources/3_0/csharp/operation-server-path.yaml") + .setOutputDir(output.toString()).addAdditionalProperty("packageName", "ServerRepro"); + new DefaultGenerator().opts(config.toClientOptInput()).generate(); + assertFileContains(output.resolve("src/ServerRepro/Api/DefaultApi.cs"), + "uriBuilderLocalVar.Host = urlLocalVar.Host;", + "uriBuilderLocalVar.Port = urlLocalVar.Port;", + "string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), \"/files/{id}\")", + "uriBuilderLocalVar.Path.Replace(\"%7Bid%7D\""); + } +} diff --git a/modules/openapi-generator/src/test/resources/3_0/csharp/operation-server-path.yaml b/modules/openapi-generator/src/test/resources/3_0/csharp/operation-server-path.yaml new file mode 100644 index 000000000000..3bd261712fad --- /dev/null +++ b/modules/openapi-generator/src/test/resources/3_0/csharp/operation-server-path.yaml @@ -0,0 +1,19 @@ +openapi: 3.0.3 +info: + title: Server path reproduction + version: 1.0.0 +paths: + /files/{id}: + get: + operationId: getFile + servers: + - url: https://example.com:8443/base + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: ok diff --git a/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools/Api/PetApi.cs index 4c08ee893e31..1ecb46a93985 100644 --- a/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools/Api/PetApi.cs @@ -827,9 +827,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2163,9 +2166,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools/Api/PetApi.cs index 9a816da25cec..a8bb9c23f3fb 100644 --- a/samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools/Api/PetApi.cs @@ -825,9 +825,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2161,9 +2164,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools/Api/PetApi.cs index 4c08ee893e31..1ecb46a93985 100644 --- a/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools/Api/PetApi.cs @@ -827,9 +827,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2163,9 +2166,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools/Api/PetApi.cs index 3c7bad87c4df..bdb131dd7219 100644 --- a/samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools/Api/PetApi.cs @@ -825,9 +825,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2161,9 +2164,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools/Api/PetApi.cs index 4c08ee893e31..1ecb46a93985 100644 --- a/samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools/Api/PetApi.cs @@ -827,9 +827,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2163,9 +2166,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Api/PetApi.cs index 636a4db3909d..d8cdb9a4fa34 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Api/PetApi.cs @@ -825,9 +825,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2157,9 +2160,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Api/PetApi.cs index 480360f8bc6c..1d45f6f2cee2 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Api/PetApi.cs @@ -825,9 +825,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2157,9 +2160,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Api/PetApi.cs index 636a4db3909d..d8cdb9a4fa34 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Api/PetApi.cs @@ -825,9 +825,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2157,9 +2160,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Api/PetApi.cs index 480360f8bc6c..1d45f6f2cee2 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Api/PetApi.cs @@ -825,9 +825,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2157,9 +2160,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Api/PetApi.cs index 9a816da25cec..a8bb9c23f3fb 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Api/PetApi.cs @@ -825,9 +825,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2161,9 +2164,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Api/PetApi.cs index 4c08ee893e31..1ecb46a93985 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Api/PetApi.cs @@ -827,9 +827,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2163,9 +2166,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Api/PetApi.cs index 3c7bad87c4df..bdb131dd7219 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Api/PetApi.cs @@ -825,9 +825,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2161,9 +2164,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Api/PetApi.cs index 4c08ee893e31..1ecb46a93985 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Api/PetApi.cs @@ -827,9 +827,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2163,9 +2166,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Api/PetApi.cs index 9a816da25cec..a8bb9c23f3fb 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Api/PetApi.cs @@ -825,9 +825,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2161,9 +2164,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Api/PetApi.cs index 4c08ee893e31..1ecb46a93985 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Api/PetApi.cs @@ -827,9 +827,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2163,9 +2166,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Api/PetApi.cs index 3c7bad87c4df..bdb131dd7219 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Api/PetApi.cs @@ -825,9 +825,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2161,9 +2164,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Api/PetApi.cs index 4c08ee893e31..1ecb46a93985 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Api/PetApi.cs @@ -827,9 +827,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2163,9 +2166,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Api/PetApi.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Api/PetApi.cs index 646819829910..8b57adf144ce 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Api/PetApi.cs +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Api/PetApi.cs @@ -824,9 +824,12 @@ public async Task AddPetAsync(Pet pet, System.Threading.Canc using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content) @@ -2156,9 +2159,12 @@ public async Task UpdatePetAsync(Pet pet, System.Threadin using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) { Uri urlLocalVar = httpRequestMessageLocalVar.RequestUri = new Uri("http://petstore.swagger.io/v2"); - uriBuilderLocalVar.Host = urlLocalVar.Authority; + uriBuilderLocalVar.Host = urlLocalVar.Host; + uriBuilderLocalVar.Port = urlLocalVar.Port; uriBuilderLocalVar.Scheme = urlLocalVar.Scheme; - uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath; + uriBuilderLocalVar.Path = urlLocalVar.AbsolutePath == "/" + ? "/pet" + : string.Concat(urlLocalVar.AbsolutePath.TrimEnd('/'), "/pet"); httpRequestMessageLocalVar.Content = (pet as object) is Org.OpenAPITools.Client.FileParameter fileParameterLocalVar ? httpRequestMessageLocalVar.Content = new StreamContent(fileParameterLocalVar.Content)