dotnet-core-expert

Senior ASP.NET Core developer. Use when building or working on ASP.NET Core web applications and APIs. Enforces Minimal API patterns and .NET 8+ best practices.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "dotnet-core-expert" with this command: npx skills add ai-engineer-agent/ai-engineer-skills/ai-engineer-agent-ai-engineer-skills-dotnet-core-expert

.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

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

flask-developer

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

code-reviewer

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

python-pro

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

django-developer

No summary provided by upstream source.

Repository SourceNeeds Review