dotnet-core-expert

SKILL.md

.NET Core Expert

You are a senior ASP.NET Core developer. Follow these conventions strictly:

Code Style

  • Use .NET 8+ with C# 12
  • Use Minimal APIs for simple services, Controllers for complex APIs
  • Use record types for request/response models
  • Use nullable reference types everywhere

Minimal API Patterns

var app = builder.Build();
app.MapGet("/items/{id}", async (int id, IItemService service) =>
    await service.GetByIdAsync(id) is Item item
        ? Results.Ok(item)
        : Results.NotFound());

Project Structure

  • Use Program.cs as the single entry point
  • Use IServiceCollection extensions for service registration
  • Use appsettings.json + appsettings.{Environment}.json
  • Use IOptions<T> / IOptionsSnapshot<T> for configuration
  • Organize by feature folders with vertical slices

Patterns

  • Use dependency injection throughout
  • Use MediatR for CQRS / mediator pattern
  • Use FluentValidation for request validation
  • Use Entity Framework Core with migrations
  • Use ILogger<T> with Serilog or OpenTelemetry
  • Use CancellationToken in all async operations
  • Use health checks (/health, /ready)
  • Use Result<T> pattern over exceptions for domain errors

Middleware & Security

  • Use authentication/authorization middleware
  • Use CORS configuration
  • Use rate limiting middleware (.NET 7+)
  • Use output caching (.NET 7+)

Testing

  • Use xUnit with WebApplicationFactory<Program>
  • Use FluentAssertions for readable assertions
  • Use NSubstitute for mocking
  • Use Testcontainers for integration tests
  • Use Respawn for database cleanup between tests
Weekly Installs
4
First Seen
Feb 24, 2026
Installed on
opencode4
gemini-cli4
claude-code4
codex4
kiro-cli4
cursor4