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 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) |
| 8.0 |
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 | |
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 |
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 |
| 6.4.0 |
useCollection | Deserialize array types to Collection<T> instead of List<T>. | false | |
useDateTimeForDate | Use DateTime to model date properties even if DateOnly supported. (.net 6.0+ only) | 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
- Boolean
- Collection
- DateOnly
- DateOnly?
- DateTime
- DateTime?
- DateTimeOffset
- DateTimeOffset?
- Decimal
- 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
- uint
- uint?
- ulong
- ulong?
RESERVED WORDS
- Client
- Configuration
- Environment
- OperatingSystem
- TimeZone
- Version
- 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
- system
- 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 |
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 |
SignatureAuth | ✗ | OAS3 |
AWSV4Signature | ✗ | ToolingExtension |
Wire Format Feature
Name | Supported | Defined By |
---|---|---|
JSON | ✓ | OAS2,OAS3 |
XML | ✓ | OAS2,OAS3 |
PROTOBUF | ✗ | ToolingExtension |
Custom | ✗ | OAS2,OAS3 |