diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/3.0/model.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/3.0/model.mustache
index 915d0a58be6..a9e04767cdc 100644
--- a/modules/openapi-generator/src/main/resources/aspnetcore/3.0/model.mustache
+++ b/modules/openapi-generator/src/main/resources/aspnetcore/3.0/model.mustache
@@ -77,7 +77,7 @@ namespace {{modelPackage}}
public {{{datatypeWithEnum}}}{{#isNullable}}?{{/isNullable}} {{name}} { get; set; }{{#defaultValue}} = {{{.}}};{{/defaultValue}}
{{/isEnum}}
{{^isEnum}}
- public {{{dataType}}} {{name}} { get; set; }{{#defaultValue}} = {{{.}}};{{/defaultValue}}
+ public {{{dataType}}}{{#nullableReferenceTypes}}{{^isContainer}}{{^required}}?{{/required}}{{/isContainer}}{{/nullableReferenceTypes}} {{name}} { get; set; }{{#defaultValue}} = {{{.}}};{{/defaultValue}}
{{/isEnum}}
{{^-last}}
diff --git a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Animal.cs b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Animal.cs
index 4b04346e358..c9da013dc71 100644
--- a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Animal.cs
+++ b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Animal.cs
@@ -45,7 +45,7 @@ namespace Org.OpenAPITools.Models
/// Gets or Sets Color
///
[DataMember(Name="color", EmitDefaultValue=false)]
- public string Color { get; set; } = "red";
+ public string? Color { get; set; } = "red";
///
/// Returns the string presentation of the object
diff --git a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/ApiResponse.cs b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/ApiResponse.cs
index 2358b07fa7d..638c1313710 100644
--- a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/ApiResponse.cs
+++ b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/ApiResponse.cs
@@ -30,19 +30,19 @@ namespace Org.OpenAPITools.Models
/// Gets or Sets Code
///
[DataMember(Name="code", EmitDefaultValue=true)]
- public int Code { get; set; }
+ public int? Code { get; set; }
///
/// Gets or Sets Type
///
[DataMember(Name="type", EmitDefaultValue=false)]
- public string Type { get; set; }
+ public string? Type { get; set; }
///
/// Gets or Sets Message
///
[DataMember(Name="message", EmitDefaultValue=false)]
- public string Message { get; set; }
+ public string? Message { get; set; }
///
/// Returns the string presentation of the object
diff --git a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Cat.cs b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Cat.cs
index ef5b1be3efb..710b6a34d82 100644
--- a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Cat.cs
+++ b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Cat.cs
@@ -30,7 +30,7 @@ namespace Org.OpenAPITools.Models
/// Gets or Sets Declawed
///
[DataMember(Name="declawed", EmitDefaultValue=true)]
- public bool Declawed { get; set; }
+ public bool? Declawed { get; set; }
///
/// Returns the string presentation of the object
diff --git a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Category.cs b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Category.cs
index 7898abbb9ff..e9718bd5ca0 100644
--- a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Category.cs
+++ b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Category.cs
@@ -30,14 +30,14 @@ namespace Org.OpenAPITools.Models
/// Gets or Sets Id
///
[DataMember(Name="id", EmitDefaultValue=true)]
- public long Id { get; set; }
+ public long? Id { get; set; }
///
/// Gets or Sets Name
///
[RegularExpression("^[a-zA-Z0-9]+[a-zA-Z0-9\\.\\-_]*[a-zA-Z0-9]+$")]
[DataMember(Name="name", EmitDefaultValue=false)]
- public string Name { get; set; }
+ public string? Name { get; set; }
///
/// Returns the string presentation of the object
diff --git a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Dog.cs b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Dog.cs
index 2dd6a7f4362..5ea23a2f881 100644
--- a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Dog.cs
+++ b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Dog.cs
@@ -30,7 +30,7 @@ namespace Org.OpenAPITools.Models
/// Gets or Sets Breed
///
[DataMember(Name="breed", EmitDefaultValue=false)]
- public string Breed { get; set; }
+ public string? Breed { get; set; }
///
/// Returns the string presentation of the object
diff --git a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Order.cs b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Order.cs
index 5da36e6f1fd..9c63ce71286 100644
--- a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Order.cs
+++ b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Order.cs
@@ -30,25 +30,25 @@ namespace Org.OpenAPITools.Models
/// Gets or Sets Id
///
[DataMember(Name="id", EmitDefaultValue=true)]
- public long Id { get; set; }
+ public long? Id { get; set; }
///
/// Gets or Sets PetId
///
[DataMember(Name="petId", EmitDefaultValue=true)]
- public long PetId { get; set; }
+ public long? PetId { get; set; }
///
/// Gets or Sets Quantity
///
[DataMember(Name="quantity", EmitDefaultValue=true)]
- public int Quantity { get; set; }
+ public int? Quantity { get; set; }
///
/// Gets or Sets ShipDate
///
[DataMember(Name="shipDate", EmitDefaultValue=false)]
- public DateTime ShipDate { get; set; }
+ public DateTime? ShipDate { get; set; }
///
@@ -90,7 +90,7 @@ namespace Org.OpenAPITools.Models
/// Gets or Sets Complete
///
[DataMember(Name="complete", EmitDefaultValue=true)]
- public bool Complete { get; set; } = false;
+ public bool? Complete { get; set; } = false;
///
/// Returns the string presentation of the object
diff --git a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Pet.cs b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Pet.cs
index 31a57ea7735..69a963a25f2 100644
--- a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Pet.cs
+++ b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Pet.cs
@@ -30,13 +30,13 @@ namespace Org.OpenAPITools.Models
/// Gets or Sets Id
///
[DataMember(Name="id", EmitDefaultValue=true)]
- public long Id { get; set; }
+ public long? Id { get; set; }
///
/// Gets or Sets Category
///
[DataMember(Name="category", EmitDefaultValue=false)]
- public Category Category { get; set; }
+ public Category? Category { get; set; }
///
/// Gets or Sets Name
diff --git a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Tag.cs b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Tag.cs
index 84ccb02359b..4d7834b4c52 100644
--- a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Tag.cs
+++ b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/Tag.cs
@@ -30,13 +30,13 @@ namespace Org.OpenAPITools.Models
/// Gets or Sets Id
///
[DataMember(Name="id", EmitDefaultValue=true)]
- public long Id { get; set; }
+ public long? Id { get; set; }
///
/// Gets or Sets Name
///
[DataMember(Name="name", EmitDefaultValue=false)]
- public string Name { get; set; }
+ public string? Name { get; set; }
///
/// Returns the string presentation of the object
diff --git a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/User.cs b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/User.cs
index 9155e7309fc..4d07fc1ef74 100644
--- a/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/User.cs
+++ b/samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/src/Org.OpenAPITools/Models/User.cs
@@ -30,50 +30,50 @@ namespace Org.OpenAPITools.Models
/// Gets or Sets Id
///
[DataMember(Name="id", EmitDefaultValue=true)]
- public long Id { get; set; }
+ public long? Id { get; set; }
///
/// Gets or Sets Username
///
[DataMember(Name="username", EmitDefaultValue=false)]
- public string Username { get; set; }
+ public string? Username { get; set; }
///
/// Gets or Sets FirstName
///
[DataMember(Name="firstName", EmitDefaultValue=false)]
- public string FirstName { get; set; }
+ public string? FirstName { get; set; }
///
/// Gets or Sets LastName
///
[DataMember(Name="lastName", EmitDefaultValue=false)]
- public string LastName { get; set; }
+ public string? LastName { get; set; }
///
/// Gets or Sets Email
///
[DataMember(Name="email", EmitDefaultValue=false)]
- public string Email { get; set; }
+ public string? Email { get; set; }
///
/// Gets or Sets Password
///
[DataMember(Name="password", EmitDefaultValue=false)]
- public string Password { get; set; }
+ public string? Password { get; set; }
///
/// Gets or Sets Phone
///
[DataMember(Name="phone", EmitDefaultValue=false)]
- public string Phone { get; set; }
+ public string? Phone { get; set; }
///
/// User Status
///
/// User Status
[DataMember(Name="userStatus", EmitDefaultValue=true)]
- public int UserStatus { get; set; }
+ public int? UserStatus { get; set; }
///
/// Returns the string presentation of the object