Skip to content
dotnet-core-expert logo

.NET Core Expert

dotnet-core-expert

Use when building .NET 8 applications with minimal APIs, clean architecture, or cloud-native microservices. Invoke for Entity Framework Core, CQRS with MediatR, JWT authentication, AOT compilation.

jeffallan/claude-skills4.5Kinstalls11.7Kstars.NET & C#

SKILL.md

Full skill instructions

.NET Core Expert

Core Workflow

  1. Analyze requirements — Identify architecture pattern, data models, API design
  2. Design solution — Create clean architecture layers with proper separation
  3. Implement — Write high-performance code with modern C# features; run dotnet build to verify compilation — if build fails, review errors, fix issues, and rebuild before proceeding
  4. Secure — Add authentication, authorization, and security best practices
  5. Test — Write comprehensive tests with xUnit and integration testing; run dotnet test to confirm all tests pass — if tests fail, diagnose failures, fix the implementation, and re-run before continuing; verify endpoints with curl or a REST client

Reference Guide

Load detailed guidance based on context:

TopicReferenceLoad When
Minimal APIsreferences/​minimal-apis.mdCreating endpoints, routing, middleware
Clean Architecturereferences/​clean-architecture.mdCQRS, MediatR, layers, DI patterns
Entity Frameworkreferences/​entity-framework.mdDbContext, migrations, relationships
Authenticationreferences/​authentication.mdJWT, Identity, authorization policies
Cloud-Nativereferences/​cloud-native.mdDocker, health checks, configuration

Constraints

MUST DO

  • Use .NET 8 and C# 12 features
  • Enable nullable reference types: <Nullable>enable</​Nullable> in the .csproj
  • Use async/​await for all I/​O operations — e.g., await dbContext.Users.ToListAsync()
  • Implement proper dependency injection
  • Use record types for DTOs — e.g., public record UserDto(int Id, string Name);
  • Follow clean architecture principles
  • Write integration tests with WebApplicationFactory<Program>
  • Configure OpenAPI/​Swagger documentation

MUST NOT DO

  • Use synchronous I/​O operations
  • Expose entities directly in API responses
  • Skip input validation
  • Use legacy .NET Framework patterns
  • Mix concerns across architectural layers
  • Use deprecated EF Core patterns

Code Examples

Minimal API Endpoint

// Program.cs
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
builder.Services.AddMediatR(cfg => cfg.RegisterServicesFromAssembly(typeof(Program).Assembly));

var app = builder.Build();
app.UseSwagger();
app.UseSwaggerUI();

app.MapGet("/​users/​{id}", async (int id, ISender sender, CancellationToken ct) =>
{
    var result = await sender.Send(new GetUserQuery(id), ct);
    return result is null ? Results.NotFound() : Results.Ok(result);
})
.WithName("GetUser")
.Produces<UserDto>()
.ProducesProblem(404);

app.Run();

MediatR Query Handler

// Application/​Users/​GetUserQuery.cs
public record GetUserQuery(int Id) : IRequest<UserDto?>;

public sealed class GetUserQueryHandler : IRequestHandler<GetUserQuery, UserDto?>
{
    private readonly AppDbContext _db;

    public GetUserQueryHandler(AppDbContext db) => _db = db;

    public async Task<UserDto?> Handle(GetUserQuery request, CancellationToken ct) =>
        await _db.Users
            .AsNoTracking()
            .Where(u => u.Id == request.Id)
            .Select(u => new UserDto(u.Id, u.Name))
            .FirstOrDefaultAsync(ct);
}

EF Core DbContext with Async Query

// Infrastructure/​AppDbContext.cs
public sealed class AppDbContext(DbContextOptions<AppDbContext> options) : DbContext(options)
{
    public DbSet<User> Users => Set<User>();

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.ApplyConfigurationsFromAssembly(typeof(AppDbContext).Assembly);
    }
}

// Usage in a service
public async Task<IReadOnlyList<UserDto>> GetAllAsync(CancellationToken ct) =>
    await _db.Users
        .AsNoTracking()
        .Select(u => new UserDto(u.Id, u.Name))
        .ToListAsync(ct);

DTO with Record Type

public record UserDto(int Id, string Name);
public record CreateUserRequest(string Name, string Email);

Output Templates

When implementing .NET features, provide:

  1. Project structure (solution/​project files)
  2. Domain models and DTOs
  3. API endpoints or service implementations
  4. Database context and migrations if applicable
  5. Brief explanation of architectural decisions

Documentation

More .NET & C# skills

Comprehensive C#/.NET design pattern analysis with actionable improvement recommendations.

39.7K 11.6K
View

Ready-to-use prompts for comprehensive .NET framework upgrade analysis and execution

39.7K 11.2K
View
csharp-async logo
.NET & C#

csharp-async

Best practices guide for C# asynchronous programming patterns and pitfalls.

39.7K 10.8K
View
csharp-xunit logo
.NET & C#

csharp-xunit

Comprehensive XUnit testing guide covering standard facts, data-driven theories, and best practices.

39.7K 10.3K
View
csharp-docs logo
.NET & C#

csharp-docs

XML documentation standards and patterns for C# public APIs and members.

39.7K 9.7K
View

Add Azure App Insights telemetry to ASP.NET Core or Node.js webapps hosted in Azure.

39.7K 9.7K
View
copilot-sdk logo
.NET & C#

copilot-sdk

Programmatic agent runtime for embedding Copilot's agentic workflows in applications across Python, TypeScript, Go, and .NET.

39.7K 9.5K
View

ASP.NET Minimal API endpoints with automatic OpenAPI/Swagger documentation and strong typing.

39.7K 9.2K
View

Comprehensive guide for building Blazor apps with Microsoft Fluent UI components.

39.7K 9.1K
View
csharp-nunit logo
.NET & C#

csharp-nunit

NUnit best practices for standard and data-driven unit testing in .NET projects.

39.7K 9K
View

Generate Dockerfile and .dockerignore files customized for ASP.NET Core containerization.

39.7K 9K
View
csharp-mstest logo
.NET & C#

csharp-mstest

Modern unit testing with MSTest 3.x/4.x using current APIs and best practices.

39.7K 9K
View

Coding & apps AI tools

Opus Clip logo
Coding & apps

Opus Clip

Opus.ai: Revolutionize Your Web Experience

Free
View
Imagica logo
Coding & apps

Imagica

Build a no-code AI app in minutes.

Freemium
View
E
Coding & apps

Emergent.sh

An IDE for code migration from legacy to modern frameworks through coding agents.

Freemium
View
Wonder Dynamics logo
Coding & apps

Wonder Dynamics

Automate CGI animation in live-action scenes

Paid
View
M
Coding & apps

Mixo

Launch a website in seconds with AI.

Paid
View
AI Code Convert logo
Coding & apps

AI Code Convert

Streamline Your Coding Experience with AI Code Helper

Free
View