# DotNetDetector

**Kind:** Class

**Source:** [`atloria-monorepo/packages/doc-automation/src/v2/stages/stage-01-parse/detectors/dotnet-detector.ts`](https://github.com/sherkety/atloria/blob/main/atloria-monorepo/packages/doc-automation/src/v2/stages/stage-01-parse/detectors/dotnet-detector.ts#L88)

.NET Detector

## Methods

| Method | Signature | Returns |
|---|---|---|
| `detectControllers` | `detectControllers(entities: Entity[])` | `DetectedDotNetController[]` |
| `detectServices` | `detectServices(entities: Entity[])` | `DetectedDotNetService[]` |
| `getControllerSummary` | `getControllerSummary(controller: DetectedDotNetController)` | `string` |

## Where it refuses work

- `DotNetDetector` stops the work with an early return when `/Service\.cs$/i.test(filePath)`.
- `DotNetDetector` stops the work with an early return when `/:\s*I\w+Service/.test(code)`.
- `DotNetDetector` stops the work with an early return when `/DbContext/.test(code) && /private\s+readonly/.test(code)`.
- `DotNetDetector` stops the work with an early return when `routeMatch`.
- `DotNetDetector` stops the work with an early return when `controllerMatch`.
- `DotNetDetector` stops the work with an early return when `!paramsStr.trim()`.
