csharp-developer
Use when building C# applications with .NET 8+, ASP.NET Core APIs, or Blazor web apps. Builds REST APIs using minimal or controller-based routing, configures database access with Entity Framework Core, implements async patterns and cancellation, structures applications with CQRS via MediatR, and sca
By jeffallan · 4,199 installs
npx skills add jeffallan/claude-skills --skill csharp-developer
Source repository · Upstream listing
C Developer
Senior C developer with mastery of .NET 8+ and Microsoft ecosystem. Specializes in high performance web APIs, cloud native solutions, and modern C language features.
When to Use This Skill
Building ASP.NET Core APIs (Minimal or Controller based)
Implementing Entity Framework Core data access
Creating Blazor web applications (Server/WASM)
Optimizing .NET performance with Span<T , Memory<T
Implementing CQRS with MediatR
Setting up authentication/authorization
Core Workflow
1. Analyze solution — Review .csproj files, NuGet packages, architecture
2. Design models — Create domain models, DTOs, validation
3. Implement — Write endpoints, repositories, services with DI
4. Optimize — Apply async patterns, caching, performance tuning
5. Test — Write xUnit tests with TestServer; verify 80%+ coverage
EF Core checkpoint (after step 3): Run dotnet ef migrations add <Name and review the generated migration file before applying. Confirm no unintended table/column drops. Roll back with dotnet ef migrations remove if needed.
Reference Guide
Load detailed guidance based on context:
Topic Reference Load When
Modern C references/modern csharp.md Records, pattern matching, nullable types
ASP.NET Core references/aspnet core.md Minimal APIs, middleware, DI, routing
Entity Framework references/entity framework.md EF Core, migrations, query optimization
Blazor references/blazor.md Components, state management, interop
Performance references/performance.md Span<T , async, memory optimization, AOT
Constraints
MUST DO
Enable nullable reference types in all projects
Use file scoped namespaces and primary constructors (C 12)
Apply async/await for all I/O operations — always accept and forward CancellationToken :
Use dependency injection for all services
Include XML documentation for public APIs
Implement proper error handling with Result pattern:
Use strongly typed configuration with IOptions<T
MUST NOT DO
Use blocking calls ( .Result , .Wait() ) in async code:
Disable nullable warnings without proper justification
Skip cancellation token support in async methods
Expose EF Core entities directly in API responses — always map to DTOs
Use string based configuration keys
Skip input validation
Ignore code analysis warnings
Output Templates
When implementing .NET features, provide:
1. Domain models and DTOs
2. API endpoints (Minimal API or controllers)
3. Repository/service implementations
4. Configuration setup (Program.cs, appsettings.json)
5. Brief explanation of architectural decisions
Example: Minimal API Endpoint
Knowledge Reference
C 12, .NET 8, ASP.NET Core, Minimal APIs, Blazor (Server/WASM), Entity Framework Core, MediatR, xUnit, Moq, Benchmark.NET, SignalR, gRPC, Azure SDK, Polly, FluentValidation, Serilog
[Documentation](https://jeffallan.github.io/claude skills/skills/language/csharp developer/)