Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • O openapi-generator
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,476
    • Issues 3,476
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 402
    • Merge requests 402
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • OpenAPI Tools
  • openapi-generator
  • Issues
  • #3475
Closed
Open
Issue created Jul 26, 2019 by Administrator@rootContributor

When polymorphism is present, csharp code has an issue on positional parameters

Created by: scavarda

Description

CSharp client for framework netcoreapp2.0 version. When polymorphism is present, such as MyJob extends Job, MyJob constructor calls base constructor with not named arguments, when these arguments are not optional. This issue occurs when a parameter is Enum type and so it's required, not optional

public partial class Job :  IEquatable<Job>, IValidatableObject
{
  public Job(long? jobId = default(long?), JobStatusEnum? jobStatus = default(JobStatusEnum?), string name = default(string))
  {
  ...
  }
}

public partial class MyJob : Job,  IEquatable<MyJob>, IValidatableObject
{
  public MyJob(...) : base(jobStatus)
}
Swagger-codegen version

swagger-codegen-cli-2.4.0-20181007.065826-339

Suggest a fix/enhancement
public partial class MyJob : Job,  IEquatable<MyJob>, IValidatableObject
{
  public MyJob(...) : base(jobStatus: jobStatus)
}
Assignee
Assign to
Time tracking