diff --git a/modules/swagger-codegen/src/main/resources/aspnetcore/enumClass.mustache b/modules/swagger-codegen/src/main/resources/aspnetcore/enumClass.mustache
index ce4e3054ea3..a8a68b99844 100644
--- a/modules/swagger-codegen/src/main/resources/aspnetcore/enumClass.mustache
+++ b/modules/swagger-codegen/src/main/resources/aspnetcore/enumClass.mustache
@@ -1,13 +1,18 @@
+
///
/// {{^description}}Gets or Sets {{{name}}}{{/description}}{{#description}}{{{description}}}{{/description}}
- /// {{#description}}
- /// {{{description}}}{{/description}}
+ ///
+ {{#description}}
+ /// {{{description}}}
+ {{/description}}
+ {{#allowableValues}}{{#enumVars}}{{#-first}}{{#isString}}[JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))]{{/isString}}{{/-first}}{{/enumVars}}{{/allowableValues}}
public enum {{#datatypeWithEnum}}{{.}}{{/datatypeWithEnum}}{{^datatypeWithEnum}}{{classname}}{{/datatypeWithEnum}}
- { {{#allowableValues}}{{#enumVars}}
+ {
+ {{#allowableValues}}{{#enumVars}}
///
/// Enum {{name}} for {{{value}}}
///
- [EnumMember(Value = {{#isLong}}"{{/isLong}}{{#isInteger}}"{{/isInteger}}{{#isFloat}}"{{/isFloat}}{{#isDouble}}"{{/isDouble}}{{{value}}}{{#isLong}}"{{/isLong}}{{#isInteger}}"{{/isInteger}}{{#isDouble}}"{{/isDouble}}{{#isFloat}}"{{/isFloat}})]
- {{name}}{{#isLong}} = {{{value}}}{{/isLong}}{{#isInteger}} = {{{value}}}{{/isInteger}}{{^isInteger}} = {{-index}}{{/isInteger}}{{^-last}},
+ {{#isString}}[EnumMember(Value = "{{{value}}}")]{{/isString}}
+ {{name}}{{^isString}} = {{{value}}}{{/isString}}{{#isString}} = {{-index}}{{/isString}}{{^-last}},
{{/-last}}{{/enumVars}}{{/allowableValues}}
}
diff --git a/samples/server/petstore/aspnetcore/.swagger-codegen/VERSION b/samples/server/petstore/aspnetcore/.swagger-codegen/VERSION
index f9f7450d135..855ff9501eb 100644
--- a/samples/server/petstore/aspnetcore/.swagger-codegen/VERSION
+++ b/samples/server/petstore/aspnetcore/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.3.0-SNAPSHOT
\ No newline at end of file
+2.4.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/server/petstore/aspnetcore/src/IO.Swagger/Controllers/PetApi.cs b/samples/server/petstore/aspnetcore/src/IO.Swagger/Controllers/PetApi.cs
index 918c99987ca..88dfc690ef1 100644
--- a/samples/server/petstore/aspnetcore/src/IO.Swagger/Controllers/PetApi.cs
+++ b/samples/server/petstore/aspnetcore/src/IO.Swagger/Controllers/PetApi.cs
@@ -92,7 +92,7 @@ namespace IO.Swagger.Controllers
string exampleJson = null;
exampleJson = "\n 123456789\n doggie\n \n aeiou\n \n \n \n aeiou\n";
- exampleJson = "[ {\n \"tags\" : [ {\n \"id\" : 1,\n \"name\" : \"name\"\n }, {\n \"id\" : 1,\n \"name\" : \"name\"\n } ],\n \"id\" : 0,\n \"category\" : {\n \"id\" : 6,\n \"name\" : \"name\"\n },\n \"status\" : \"available\",\n \"name\" : \"doggie\",\n \"photoUrls\" : [ \"photoUrls\", \"photoUrls\" ]\n}, {\n \"tags\" : [ {\n \"id\" : 1,\n \"name\" : \"name\"\n }, {\n \"id\" : 1,\n \"name\" : \"name\"\n } ],\n \"id\" : 0,\n \"category\" : {\n \"id\" : 6,\n \"name\" : \"name\"\n },\n \"status\" : \"available\",\n \"name\" : \"doggie\",\n \"photoUrls\" : [ \"photoUrls\", \"photoUrls\" ]\n} ]";
+ exampleJson = "[ {\n \"photoUrls\" : [ \"photoUrls\", \"photoUrls\" ],\n \"name\" : \"doggie\",\n \"id\" : 0,\n \"category\" : {\n \"name\" : \"name\",\n \"id\" : 6\n },\n \"tags\" : [ {\n \"name\" : \"name\",\n \"id\" : 1\n }, {\n \"name\" : \"name\",\n \"id\" : 1\n } ],\n \"status\" : \"available\"\n}, {\n \"photoUrls\" : [ \"photoUrls\", \"photoUrls\" ],\n \"name\" : \"doggie\",\n \"id\" : 0,\n \"category\" : {\n \"name\" : \"name\",\n \"id\" : 6\n },\n \"tags\" : [ {\n \"name\" : \"name\",\n \"id\" : 1\n }, {\n \"name\" : \"name\",\n \"id\" : 1\n } ],\n \"status\" : \"available\"\n} ]";
var example = exampleJson != null
? JsonConvert.DeserializeObject>(exampleJson)
@@ -123,7 +123,7 @@ namespace IO.Swagger.Controllers
string exampleJson = null;
exampleJson = "\n 123456789\n doggie\n \n aeiou\n \n \n \n aeiou\n";
- exampleJson = "[ {\n \"tags\" : [ {\n \"id\" : 1,\n \"name\" : \"name\"\n }, {\n \"id\" : 1,\n \"name\" : \"name\"\n } ],\n \"id\" : 0,\n \"category\" : {\n \"id\" : 6,\n \"name\" : \"name\"\n },\n \"status\" : \"available\",\n \"name\" : \"doggie\",\n \"photoUrls\" : [ \"photoUrls\", \"photoUrls\" ]\n}, {\n \"tags\" : [ {\n \"id\" : 1,\n \"name\" : \"name\"\n }, {\n \"id\" : 1,\n \"name\" : \"name\"\n } ],\n \"id\" : 0,\n \"category\" : {\n \"id\" : 6,\n \"name\" : \"name\"\n },\n \"status\" : \"available\",\n \"name\" : \"doggie\",\n \"photoUrls\" : [ \"photoUrls\", \"photoUrls\" ]\n} ]";
+ exampleJson = "[ {\n \"photoUrls\" : [ \"photoUrls\", \"photoUrls\" ],\n \"name\" : \"doggie\",\n \"id\" : 0,\n \"category\" : {\n \"name\" : \"name\",\n \"id\" : 6\n },\n \"tags\" : [ {\n \"name\" : \"name\",\n \"id\" : 1\n }, {\n \"name\" : \"name\",\n \"id\" : 1\n } ],\n \"status\" : \"available\"\n}, {\n \"photoUrls\" : [ \"photoUrls\", \"photoUrls\" ],\n \"name\" : \"doggie\",\n \"id\" : 0,\n \"category\" : {\n \"name\" : \"name\",\n \"id\" : 6\n },\n \"tags\" : [ {\n \"name\" : \"name\",\n \"id\" : 1\n }, {\n \"name\" : \"name\",\n \"id\" : 1\n } ],\n \"status\" : \"available\"\n} ]";
var example = exampleJson != null
? JsonConvert.DeserializeObject>(exampleJson)
@@ -158,7 +158,7 @@ namespace IO.Swagger.Controllers
string exampleJson = null;
exampleJson = "\n 123456789\n doggie\n \n aeiou\n \n \n \n aeiou\n";
- exampleJson = "{\n \"tags\" : [ {\n \"id\" : 1,\n \"name\" : \"name\"\n }, {\n \"id\" : 1,\n \"name\" : \"name\"\n } ],\n \"id\" : 0,\n \"category\" : {\n \"id\" : 6,\n \"name\" : \"name\"\n },\n \"status\" : \"available\",\n \"name\" : \"doggie\",\n \"photoUrls\" : [ \"photoUrls\", \"photoUrls\" ]\n}";
+ exampleJson = "{\n \"photoUrls\" : [ \"photoUrls\", \"photoUrls\" ],\n \"name\" : \"doggie\",\n \"id\" : 0,\n \"category\" : {\n \"name\" : \"name\",\n \"id\" : 6\n },\n \"tags\" : [ {\n \"name\" : \"name\",\n \"id\" : 1\n }, {\n \"name\" : \"name\",\n \"id\" : 1\n } ],\n \"status\" : \"available\"\n}";
var example = exampleJson != null
? JsonConvert.DeserializeObject(exampleJson)
@@ -234,7 +234,7 @@ namespace IO.Swagger.Controllers
// return StatusCode(200, default(ApiResponse));
string exampleJson = null;
- exampleJson = "{\n \"message\" : \"message\",\n \"code\" : 0,\n \"type\" : \"type\"\n}";
+ exampleJson = "{\n \"code\" : 0,\n \"type\" : \"type\",\n \"message\" : \"message\"\n}";
var example = exampleJson != null
? JsonConvert.DeserializeObject(exampleJson)
diff --git a/samples/server/petstore/aspnetcore/src/IO.Swagger/Controllers/StoreApi.cs b/samples/server/petstore/aspnetcore/src/IO.Swagger/Controllers/StoreApi.cs
index 178f7397c5c..d2ee6867e7f 100644
--- a/samples/server/petstore/aspnetcore/src/IO.Swagger/Controllers/StoreApi.cs
+++ b/samples/server/petstore/aspnetcore/src/IO.Swagger/Controllers/StoreApi.cs
@@ -105,7 +105,7 @@ namespace IO.Swagger.Controllers
string exampleJson = null;
exampleJson = "\n 123456789\n 123456789\n 123\n 2000-01-23T04:56:07.000Z\n aeiou\n true\n";
- exampleJson = "{\n \"id\" : 0,\n \"petId\" : 6,\n \"complete\" : false,\n \"status\" : \"placed\",\n \"quantity\" : 1,\n \"shipDate\" : \"2000-01-23T04:56:07.000+00:00\"\n}";
+ exampleJson = "{\n \"petId\" : 6,\n \"quantity\" : 1,\n \"id\" : 0,\n \"shipDate\" : \"2000-01-23T04:56:07.000+00:00\",\n \"complete\" : false,\n \"status\" : \"placed\"\n}";
var example = exampleJson != null
? JsonConvert.DeserializeObject(exampleJson)
@@ -136,7 +136,7 @@ namespace IO.Swagger.Controllers
string exampleJson = null;
exampleJson = "\n 123456789\n 123456789\n 123\n 2000-01-23T04:56:07.000Z\n aeiou\n true\n";
- exampleJson = "{\n \"id\" : 0,\n \"petId\" : 6,\n \"complete\" : false,\n \"status\" : \"placed\",\n \"quantity\" : 1,\n \"shipDate\" : \"2000-01-23T04:56:07.000+00:00\"\n}";
+ exampleJson = "{\n \"petId\" : 6,\n \"quantity\" : 1,\n \"id\" : 0,\n \"shipDate\" : \"2000-01-23T04:56:07.000+00:00\",\n \"complete\" : false,\n \"status\" : \"placed\"\n}";
var example = exampleJson != null
? JsonConvert.DeserializeObject(exampleJson)
diff --git a/samples/server/petstore/aspnetcore/src/IO.Swagger/Controllers/UserApi.cs b/samples/server/petstore/aspnetcore/src/IO.Swagger/Controllers/UserApi.cs
index 0b3d4dc374f..5a616057f9c 100644
--- a/samples/server/petstore/aspnetcore/src/IO.Swagger/Controllers/UserApi.cs
+++ b/samples/server/petstore/aspnetcore/src/IO.Swagger/Controllers/UserApi.cs
@@ -137,7 +137,7 @@ namespace IO.Swagger.Controllers
string exampleJson = null;
exampleJson = "\n 123456789\n aeiou\n aeiou\n aeiou\n aeiou\n aeiou\n aeiou\n 123\n";
- exampleJson = "{\n \"id\" : 0,\n \"lastName\" : \"lastName\",\n \"phone\" : \"phone\",\n \"username\" : \"username\",\n \"email\" : \"email\",\n \"userStatus\" : 6,\n \"firstName\" : \"firstName\",\n \"password\" : \"password\"\n}";
+ exampleJson = "{\n \"firstName\" : \"firstName\",\n \"lastName\" : \"lastName\",\n \"password\" : \"password\",\n \"userStatus\" : 6,\n \"phone\" : \"phone\",\n \"id\" : 0,\n \"email\" : \"email\",\n \"username\" : \"username\"\n}";
var example = exampleJson != null
? JsonConvert.DeserializeObject(exampleJson)
diff --git a/samples/server/petstore/aspnetcore/src/IO.Swagger/Models/Order.cs b/samples/server/petstore/aspnetcore/src/IO.Swagger/Models/Order.cs
index 1ce1b448c8c..1e617fdf089 100644
--- a/samples/server/petstore/aspnetcore/src/IO.Swagger/Models/Order.cs
+++ b/samples/server/petstore/aspnetcore/src/IO.Swagger/Models/Order.cs
@@ -50,26 +50,29 @@ namespace IO.Swagger.Models
///
[DataMember(Name="shipDate")]
public DateTime? ShipDate { get; set; }
+
///
/// Order Status
///
/// Order Status
+ [JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))]
public enum StatusEnum
- {
+ {
+
///
- /// Enum PlacedEnum for "placed"
+ /// Enum PlacedEnum for placed
///
[EnumMember(Value = "placed")]
PlacedEnum = 1,
///
- /// Enum ApprovedEnum for "approved"
+ /// Enum ApprovedEnum for approved
///
[EnumMember(Value = "approved")]
ApprovedEnum = 2,
///
- /// Enum DeliveredEnum for "delivered"
+ /// Enum DeliveredEnum for delivered
///
[EnumMember(Value = "delivered")]
DeliveredEnum = 3
diff --git a/samples/server/petstore/aspnetcore/src/IO.Swagger/Models/Pet.cs b/samples/server/petstore/aspnetcore/src/IO.Swagger/Models/Pet.cs
index 329a0986435..fc9884836f0 100644
--- a/samples/server/petstore/aspnetcore/src/IO.Swagger/Models/Pet.cs
+++ b/samples/server/petstore/aspnetcore/src/IO.Swagger/Models/Pet.cs
@@ -58,26 +58,29 @@ namespace IO.Swagger.Models
///
[DataMember(Name="tags")]
public List Tags { get; set; }
+
///
/// pet status in the store
///
/// pet status in the store
+ [JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))]
public enum StatusEnum
- {
+ {
+
///
- /// Enum AvailableEnum for "available"
+ /// Enum AvailableEnum for available
///
[EnumMember(Value = "available")]
AvailableEnum = 1,
///
- /// Enum PendingEnum for "pending"
+ /// Enum PendingEnum for pending
///
[EnumMember(Value = "pending")]
PendingEnum = 2,
///
- /// Enum SoldEnum for "sold"
+ /// Enum SoldEnum for sold
///
[EnumMember(Value = "sold")]
SoldEnum = 3
diff --git a/samples/server/petstore/aspnetcore/src/IO.Swagger/wwwroot/swagger-original.json b/samples/server/petstore/aspnetcore/src/IO.Swagger/wwwroot/swagger-original.json
index 6bbf519db95..723ce2eb47a 100644
--- a/samples/server/petstore/aspnetcore/src/IO.Swagger/wwwroot/swagger-original.json
+++ b/samples/server/petstore/aspnetcore/src/IO.Swagger/wwwroot/swagger-original.json
@@ -108,8 +108,8 @@
"type" : "array",
"items" : {
"type" : "string",
- "enum" : [ "available", "pending", "sold" ],
- "default" : "available"
+ "default" : "available",
+ "enum" : [ "available", "pending", "sold" ]
},
"collectionFormat" : "csv"
} ],
@@ -685,12 +685,12 @@
"title" : "Pet Order",
"description" : "An order for a pets from the pet store",
"example" : {
- "id" : 0,
"petId" : 6,
- "complete" : false,
- "status" : "placed",
"quantity" : 1,
- "shipDate" : "2000-01-23T04:56:07.000+00:00"
+ "id" : 0,
+ "shipDate" : "2000-01-23T04:56:07.000+00:00",
+ "complete" : false,
+ "status" : "placed"
},
"xml" : {
"name" : "Order"
@@ -710,8 +710,8 @@
"title" : "Pet category",
"description" : "A category for a pet",
"example" : {
- "id" : 6,
- "name" : "name"
+ "name" : "name",
+ "id" : 6
},
"xml" : {
"name" : "Category"
@@ -751,14 +751,14 @@
"title" : "a User",
"description" : "A User who is purchasing from the pet store",
"example" : {
- "id" : 0,
- "lastName" : "lastName",
- "phone" : "phone",
- "username" : "username",
- "email" : "email",
- "userStatus" : 6,
"firstName" : "firstName",
- "password" : "password"
+ "lastName" : "lastName",
+ "password" : "password",
+ "userStatus" : 6,
+ "phone" : "phone",
+ "id" : 0,
+ "email" : "email",
+ "username" : "username"
},
"xml" : {
"name" : "User"
@@ -778,8 +778,8 @@
"title" : "Pet Tag",
"description" : "A tag for a pet",
"example" : {
- "id" : 1,
- "name" : "name"
+ "name" : "name",
+ "id" : 1
},
"xml" : {
"name" : "Tag"
@@ -829,21 +829,21 @@
"title" : "a Pet",
"description" : "A pet for sale in the pet store",
"example" : {
- "tags" : [ {
- "id" : 1,
- "name" : "name"
- }, {
- "id" : 1,
- "name" : "name"
- } ],
+ "photoUrls" : [ "photoUrls", "photoUrls" ],
+ "name" : "doggie",
"id" : 0,
"category" : {
- "id" : 6,
- "name" : "name"
+ "name" : "name",
+ "id" : 6
},
- "status" : "available",
- "name" : "doggie",
- "photoUrls" : [ "photoUrls", "photoUrls" ]
+ "tags" : [ {
+ "name" : "name",
+ "id" : 1
+ }, {
+ "name" : "name",
+ "id" : 1
+ } ],
+ "status" : "available"
},
"xml" : {
"name" : "Pet"
@@ -866,9 +866,9 @@
"title" : "An uploaded response",
"description" : "Describes the result of uploading an image resource",
"example" : {
- "message" : "message",
"code" : 0,
- "type" : "type"
+ "type" : "type",
+ "message" : "message"
}
}
},