# C# configuration options

This section details the available configuration options for the C# SDK. All configuration is managed in the `gen.yaml` file under the `csharp` section.

## Version and general configuration

```yml
csharp:
  version: 1.2.3
  author: "Author Name"
  packageName: "custom-sdk"
  dotnetVersion: "net10.0"
  description: "A description of your SDK"
```

## Publishing configuration
```yml
csharp:
  packageTags: "openapi sdk rest"
  includeDebugSymbols: true
  enableSourceLink: true
```

## Additional dependencies

```yml
csharp:
  additionalDependencies:
    - package: Newtonsoft.Json
      version: 13.0.3
```

## Method and parameter management
```yml
csharp:
  maxMethodParams: 4
  enableCancellationToken: true
```

## Security configuration

```yml
csharp:
  flattenGlobalSecurity: true
```

## Module management

```yml
csharp:
  sourceDirectory: "src"
  disableNamespacePascalCasingApr2024: false
```

## Import management

```yml
csharp:
  imports:
    option: "openapi"
    paths:
      callbacks: models/callbacks
      errors: models/errors
      operations: models/operations
      shared: models/components
      webhooks: models/webhooks
```

### Import paths

## Error and response handling
```yml
csharp:
  clientServerStatusCodesAsErrors: true
  responseFormat: "envelope-http"
```
