--- title: Documentation for the aspnetcore Generator --- ## METADATA | Property | Value | Notes | | -------- | ----- | ----- | | generator name | aspnetcore | pass this to the generate command after -g | | generator stability | STABLE | | | generator type | SERVER | | | generator language | C# | | | generator default templating engine | mustache | | | helpTxt | Generates an ASP.NET Core Web API server. | | ## CONFIG OPTIONS These options may be applied as additional-properties (cli) or configOptions (plugins). Refer to [configuration docs](https://openapi-generator.tech/docs/configuration) for more details. | Option | Description | Values | Default | | ------ | ----------- | ------ | ------- | |aspnetCoreVersion|ASP.NET Core version: 6.0, 5.0, 3.1, 3.0, 2.2, 2.1, 2.0 (deprecated)|
**2.0**
ASP.NET Core 2.0
**2.1**
ASP.NET Core 2.1
**2.2**
ASP.NET Core 2.2
**3.0**
ASP.NET Core 3.0
**3.1**
ASP.NET Core 3.1
**5.0**
ASP.NET Core 5.0
**6.0**
ASP.NET Core 6.0
|3.1| |buildTarget|Target to build an application or library|
**program**
Generate code for a standalone server
**library**
Generate code for a server abstract class library
|program| |classModifier|Class Modifier for controller classes: Empty string or abstract.| || |compatibilityVersion|ASP.Net Core CompatibilityVersion| |Version_2_2| |enumNameSuffix|Suffix that will be appended to all enum names.| |Enum| |enumValueSuffix|Suffix that will be appended to all enum values.| |Enum| |generateBody|Generates method body.| |true| |isLibrary|Is the build a library| |false| |licenseName|The name of the license| |NoLicense| |licenseUrl|The URL of the license| |http://localhost| |modelClassModifier|Model Class Modifier can be nothing or partial| |partial| |newtonsoftVersion|Version for Microsoft.AspNetCore.Mvc.NewtonsoftJson for ASP.NET Core 3.0+| |3.0.0| |nullableReferenceTypes|Use nullable annotations in the project. Only supported on C# 8 / ASP.NET Core 3.1 or newer.| |false| |operationIsAsync|Set methods to async or sync (default).| |false| |operationModifier|Operation Modifier can be virtual or abstract|
**virtual**
Keep method virtual
**abstract**
Make method abstract
|virtual| |operationResultTask|Set methods result to Task<>.| |false| |packageAuthors|Specifies Authors property in the .NET Core project file.| |OpenAPI| |packageCopyright|Specifies an AssemblyCopyright for the .NET Framework global assembly attributes stored in the AssemblyInfo file.| |No Copyright| |packageDescription|Specifies a AssemblyDescription for the .NET Framework global assembly attributes stored in the AssemblyInfo file.| |A library generated from a OpenAPI doc| |packageGuid|The GUID that will be associated with the C# project| |null| |packageName|C# package name (convention: Title.Case).| |Org.OpenAPITools| |packageTitle|Specifies an AssemblyTitle for the .NET Framework global assembly attributes stored in the AssemblyInfo file.| |OpenAPI Library| |packageVersion|C# package version.| |1.0.0| |pocoModels|Build POCO Models| |false| |returnICollection|Return ICollection<T> instead of the concrete type.| |false| |sortParamsByRequiredFlag|Sort method arguments to place required parameters before optional parameters.| |true| |sourceFolder|source folder for generated code| |src| |swashbuckleVersion|Swashbuckle version: 3.0.0 (deprecated), 4.0.0 (deprecated), 5.0.0 (deprecated), 6.4.0|
**3.0.0**
Swashbuckle 3.0.0
**4.0.0**
Swashbuckle 4.0.0
**5.0.0**
Swashbuckle 5.0.0
**6.4.0**
Swashbuckle 6.4.0
|3.0.0| |useCollection|Deserialize array types to Collection<T> instead of List<T>.| |false| |useDateTimeOffset|Use DateTimeOffset to model date-time properties| |false| |useDefaultRouting|Use default routing for the ASP.NET Core version.| |true| |useFrameworkReference|Use frameworkReference for ASP.NET Core 3.0+ and PackageReference ASP.NET Core 2.2 or earlier.| |false| |useNewtonsoft|Uses the Newtonsoft JSON library.| |true| |useSeparateModelProject|Create a separate project for models| |false| |useSwashbuckle|Uses the Swashbuckle.AspNetCore NuGet package for documentation.| |true| ## IMPORT MAPPING | Type/Alias | Imports | | ---------- | ------- | ## INSTANTIATION TYPES | Type/Alias | Instantiated By | | ---------- | --------------- | |array|List| |list|List| |map|Dictionary| ## LANGUAGE PRIMITIVES ## RESERVED WORDS ## FEATURE SET ### Client Modification Feature | Name | Supported | Defined By | | ---- | --------- | ---------- | |BasePath|✗|ToolingExtension |Authorizations|✗|ToolingExtension |UserAgent|✗|ToolingExtension |MockServer|✗|ToolingExtension ### Data Type Feature | Name | Supported | Defined By | | ---- | --------- | ---------- | |Custom|✗|OAS2,OAS3 |Int32|✓|OAS2,OAS3 |Int64|✓|OAS2,OAS3 |Float|✓|OAS2,OAS3 |Double|✓|OAS2,OAS3 |Decimal|✓|ToolingExtension |String|✓|OAS2,OAS3 |Byte|✓|OAS2,OAS3 |Binary|✓|OAS2,OAS3 |Boolean|✓|OAS2,OAS3 |Date|✓|OAS2,OAS3 |DateTime|✓|OAS2,OAS3 |Password|✓|OAS2,OAS3 |File|✓|OAS2 |Uuid|✗| |Array|✓|OAS2,OAS3 |Null|✗|OAS3 |AnyType|✗|OAS2,OAS3 |Object|✓|OAS2,OAS3 |Maps|✓|ToolingExtension |CollectionFormat|✓|OAS2 |CollectionFormatMulti|✓|OAS2 |Enum|✓|OAS2,OAS3 |ArrayOfEnum|✓|ToolingExtension |ArrayOfModel|✓|ToolingExtension |ArrayOfCollectionOfPrimitives|✓|ToolingExtension |ArrayOfCollectionOfModel|✓|ToolingExtension |ArrayOfCollectionOfEnum|✓|ToolingExtension |MapOfEnum|✓|ToolingExtension |MapOfModel|✓|ToolingExtension |MapOfCollectionOfPrimitives|✓|ToolingExtension |MapOfCollectionOfModel|✓|ToolingExtension |MapOfCollectionOfEnum|✓|ToolingExtension ### Documentation Feature | Name | Supported | Defined By | | ---- | --------- | ---------- | |Readme|✓|ToolingExtension |Model|✓|ToolingExtension |Api|✓|ToolingExtension ### Global Feature | Name | Supported | Defined By | | ---- | --------- | ---------- | |Host|✓|OAS2,OAS3 |BasePath|✓|OAS2,OAS3 |Info|✓|OAS2,OAS3 |Schemes|✗|OAS2,OAS3 |PartialSchemes|✓|OAS2,OAS3 |Consumes|✓|OAS2 |Produces|✓|OAS2 |ExternalDocumentation|✓|OAS2,OAS3 |Examples|✓|OAS2,OAS3 |XMLStructureDefinitions|✗|OAS2,OAS3 |MultiServer|✗|OAS3 |ParameterizedServer|✗|OAS3 |ParameterStyling|✗|OAS3 |Callbacks|✗|OAS3 |LinkObjects|✗|OAS3 ### Parameter Feature | Name | Supported | Defined By | | ---- | --------- | ---------- | |Path|✓|OAS2,OAS3 |Query|✓|OAS2,OAS3 |Header|✓|OAS2,OAS3 |Body|✓|OAS2 |FormUnencoded|✓|OAS2 |FormMultipart|✓|OAS2 |Cookie|✓|OAS3 ### Schema Support Feature | Name | Supported | Defined By | | ---- | --------- | ---------- | |Simple|✓|OAS2,OAS3 |Composite|✓|OAS2,OAS3 |Polymorphism|✓|OAS2,OAS3 |Union|✗|OAS3 |allOf|✗|OAS2,OAS3 |anyOf|✗|OAS3 |oneOf|✗|OAS3 |not|✗|OAS3 ### Security Feature | Name | Supported | Defined By | | ---- | --------- | ---------- | |BasicAuth|✓|OAS2,OAS3 |ApiKey|✓|OAS2,OAS3 |OpenIDConnect|✗|OAS3 |BearerToken|✓|OAS3 |OAuth2_Implicit|✗|OAS2,OAS3 |OAuth2_Password|✗|OAS2,OAS3 |OAuth2_ClientCredentials|✗|OAS2,OAS3 |OAuth2_AuthorizationCode|✗|OAS2,OAS3 ### Wire Format Feature | Name | Supported | Defined By | | ---- | --------- | ---------- | |JSON|✓|OAS2,OAS3 |XML|✓|OAS2,OAS3 |PROTOBUF|✗|ToolingExtension |Custom|✗|OAS2,OAS3