# Config Options for aspnetcore

These options may be applied as additional-properties (cli) or configOptions (plugins). Refer to configuration docs for more details.

Option | Description | Values | Default
--- | --- | --- | ---
aspnetCoreVersion | ASP.NET Core version: 3.1, 3.0, 2.2, 2.1, 2.0 (deprecated) |  | 2.2
buildTarget | Target to build an application or 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
operationIsAsync | Set methods to async or sync (default). |  | false
operationModifier | Operation Modifier can be virtual or 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
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
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, 4.0.0, 5.0.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
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

- Boolean
- Collection
- DateTime
- DateTime?
- DateTimeOffset
- DateTimeOffset?
- Dictionary
- Double
- Float
- Guid
- Guid?
- ICollection
- Int32
- Int64
- List
- Object
- String
- System.IO.Stream
- bool
- bool?
- byte[]
- decimal
- decimal?
- double
- double?
- float
- float?
- int
- int?
- long
- long?
- string

## #RESERVED WORDS

- Client
- abstract
- as
- async
- await
- base
- bool
- break
- byte
- case
- catch
- char
- checked
- class
- client
- const
- continue
- decimal
- default
- delegate
- do
- double
- dynamic
- else
- enum
- event
- explicit
- extern
- false
- finally
- fixed
- float
- for
- foreach
- goto
- if
- implicit
- in
- int
- interface
- internal
- is
- localVarFileParams
- localVarFormParams
- localVarHeaderParams
- localVarHttpContentType
- localVarHttpContentTypes
- localVarHttpHeaderAccept
- localVarHttpHeaderAccepts
- localVarPath
- localVarPathParams
- localVarPostBody
- localVarQueryParams
- localVarResponse
- localVarStatusCode
- lock
- long
- namespace
- new
- null
- object
- operator
- out
- override
- parameter
- params
- private
- protected
- public
- readonly
- ref
- return
- sbyte
- sealed
- short
- sizeof
- stackalloc
- static
- string
- struct
- switch
- this
- throw
- true
- try
- typeof
- uint
- ulong
- unchecked
- unsafe
- ushort
- using
- var
- virtual
- void
- volatile
- while
- yield

## #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
Array | ✓ | 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

### #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

Edit this page
Last updated on 2020-10-1 by Jim Schubert

- IMPORT MAPPING
- INSTANTIATION TYPES
- LANGUAGE PRIMITIVES
- RESERVED WORDS
- FEATURE SET
  - Client Modification Feature
  - Data Type Feature
  - Documentation Feature
  - Global Feature
  - Parameter Feature
  - Schema Support Feature
  - Security Feature
  - Wire Format Feature