diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/CSharpClientCodegen.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/CSharpClientCodegen.java
index be8b4b74781..f69ddd16d35 100644
--- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/CSharpClientCodegen.java
+++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/CSharpClientCodegen.java
@@ -7,9 +7,7 @@ import io.swagger.codegen.DefaultCodegen;
import io.swagger.codegen.SupportingFile;
import io.swagger.codegen.CodegenProperty;
import io.swagger.codegen.CodegenModel;
-import io.swagger.models.properties.ArrayProperty;
-import io.swagger.models.properties.MapProperty;
-import io.swagger.models.properties.Property;
+import io.swagger.models.properties.*;
import io.swagger.codegen.CliOption;
import java.io.File;
@@ -300,4 +298,51 @@ public class CSharpClientCodegen extends DefaultCodegen implements CodegenConfig
}
return objs;
}
+
+ /**
+ * Return the default value of the property
+ *
+ * @param p Swagger property object
+ * @return string presentation of the default value of the property
+ */
+ @Override
+ public String toDefaultValue(Property p) {
+ if (p instanceof StringProperty) {
+ StringProperty dp = (StringProperty) p;
+ if (dp.getDefault() != null) {
+ return "\"" + dp.getDefault().toString() + "\"";
+ }
+ } else if (p instanceof BooleanProperty) {
+ BooleanProperty dp = (BooleanProperty) p;
+ if (dp.getDefault() != null) {
+ return dp.getDefault().toString();
+ }
+ } else if (p instanceof DateProperty) {
+ // TODO
+ } else if (p instanceof DateTimeProperty) {
+ // TODO
+ } else if (p instanceof DoubleProperty) {
+ DoubleProperty dp = (DoubleProperty) p;
+ if (dp.getDefault() != null) {
+ return dp.getDefault().toString();
+ }
+ } else if (p instanceof FloatProperty) {
+ FloatProperty dp = (FloatProperty) p;
+ if (dp.getDefault() != null) {
+ return dp.getDefault().toString();
+ }
+ } else if (p instanceof IntegerProperty) {
+ IntegerProperty dp = (IntegerProperty) p;
+ if (dp.getDefault() != null) {
+ return dp.getDefault().toString();
+ }
+ } else if (p instanceof LongProperty) {
+ LongProperty dp = (LongProperty) p;
+ if (dp.getDefault() != null) {
+ return dp.getDefault().toString();
+ }
+ }
+
+ return null;
+ }
}
diff --git a/modules/swagger-codegen/src/main/resources/csharp/model.mustache b/modules/swagger-codegen/src/main/resources/csharp/model.mustache
index 7b7f1a6aea0..faff8d20329 100644
--- a/modules/swagger-codegen/src/main/resources/csharp/model.mustache
+++ b/modules/swagger-codegen/src/main/resources/csharp/model.mustache
@@ -18,6 +18,15 @@ namespace {{packageName}}.Model
[DataContract]
public class {{classname}} : IEquatable<{{classname}}>{{#parent}}, {{{parent}}}{{/parent}}
{
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ public {{classname}}()
+ {
+ {{#vars}}{{#defaultValue}}this.{{name}} = {{{defaultValue}}};
+ {{/defaultValue}}{{/vars}}
+ }
+
{{#vars}}
///
/// {{^description}}Gets or Sets {{{name}}}{{/description}}{{#description}}{{{description}}}{{/description}}
diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Category.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Category.cs
index 7d3f0936dce..d9cb6b21005 100644
--- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Category.cs
+++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Category.cs
@@ -16,6 +16,14 @@ namespace IO.Swagger.Model
[DataContract]
public class Category : IEquatable
{
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ public Category()
+ {
+
+ }
+
///
/// Gets or Sets Id
diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Order.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Order.cs
index 1f786769d55..2191707bd09 100644
--- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Order.cs
+++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Order.cs
@@ -16,6 +16,14 @@ namespace IO.Swagger.Model
[DataContract]
public class Order : IEquatable
{
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ public Order()
+ {
+
+ }
+
///
/// Gets or Sets Id
diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Pet.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Pet.cs
index d85d8a8be7e..10c44fb46a7 100644
--- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Pet.cs
+++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Pet.cs
@@ -16,6 +16,14 @@ namespace IO.Swagger.Model
[DataContract]
public class Pet : IEquatable
{
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ public Pet()
+ {
+
+ }
+
///
/// Gets or Sets Id
diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Tag.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Tag.cs
index 8b2cbe08474..93210505bf0 100644
--- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Tag.cs
+++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Tag.cs
@@ -16,6 +16,14 @@ namespace IO.Swagger.Model
[DataContract]
public class Tag : IEquatable
{
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ public Tag()
+ {
+
+ }
+
///
/// Gets or Sets Id
diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/User.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/User.cs
index d2c1e3a46eb..1fbd17da993 100644
--- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/User.cs
+++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/User.cs
@@ -16,6 +16,14 @@ namespace IO.Swagger.Model
[DataContract]
public class User : IEquatable
{
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ public User()
+ {
+
+ }
+
///
/// Gets or Sets Id
diff --git a/samples/client/petstore/csharp/SwaggerClientTest/SwaggerClientTest.userprefs b/samples/client/petstore/csharp/SwaggerClientTest/SwaggerClientTest.userprefs
index da9e64e0c90..ab3a8ae3ac4 100644
--- a/samples/client/petstore/csharp/SwaggerClientTest/SwaggerClientTest.userprefs
+++ b/samples/client/petstore/csharp/SwaggerClientTest/SwaggerClientTest.userprefs
@@ -1,30 +1,11 @@
-
+
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/samples/client/petstore/csharp/SwaggerClientTest/bin/Debug/SwaggerClientTest.dll b/samples/client/petstore/csharp/SwaggerClientTest/bin/Debug/SwaggerClientTest.dll
index eb5aee17989..a438e103954 100755
Binary files a/samples/client/petstore/csharp/SwaggerClientTest/bin/Debug/SwaggerClientTest.dll and b/samples/client/petstore/csharp/SwaggerClientTest/bin/Debug/SwaggerClientTest.dll differ
diff --git a/samples/client/petstore/csharp/SwaggerClientTest/bin/Debug/SwaggerClientTest.dll.mdb b/samples/client/petstore/csharp/SwaggerClientTest/bin/Debug/SwaggerClientTest.dll.mdb
index 073b96f23b3..79928c469ee 100644
Binary files a/samples/client/petstore/csharp/SwaggerClientTest/bin/Debug/SwaggerClientTest.dll.mdb and b/samples/client/petstore/csharp/SwaggerClientTest/bin/Debug/SwaggerClientTest.dll.mdb differ
diff --git a/samples/client/petstore/csharp/SwaggerClientTest/obj/Debug/SwaggerClientTest.dll b/samples/client/petstore/csharp/SwaggerClientTest/obj/Debug/SwaggerClientTest.dll
index eb5aee17989..a438e103954 100755
Binary files a/samples/client/petstore/csharp/SwaggerClientTest/obj/Debug/SwaggerClientTest.dll and b/samples/client/petstore/csharp/SwaggerClientTest/obj/Debug/SwaggerClientTest.dll differ
diff --git a/samples/client/petstore/csharp/SwaggerClientTest/obj/Debug/SwaggerClientTest.dll.mdb b/samples/client/petstore/csharp/SwaggerClientTest/obj/Debug/SwaggerClientTest.dll.mdb
index 073b96f23b3..79928c469ee 100644
Binary files a/samples/client/petstore/csharp/SwaggerClientTest/obj/Debug/SwaggerClientTest.dll.mdb and b/samples/client/petstore/csharp/SwaggerClientTest/obj/Debug/SwaggerClientTest.dll.mdb differ