dotnet-development

Guide construction of maintainable ASP.NET Core services with layered architecture and DI patterns.

Updated Apr 25, 2026
One-click install
npx skills add https://github.com/Tiepbm/software-engineering-agent --skill dotnet-development-tiepbm
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dotnet-development
Source: https://github.com/Tiepbm/software-engineering-agent/tree/main/skills/dotnet-development
Command: npx skills add https://github.com/Tiepbm/software-engineering-agent --skill dotnet-development-tiepbm

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill guides building maintainable ASP.NET Core services with proper layering, dependency injection, and production-ready practices, reducing coupling and simplifying testing.

Core Features & Use Cases

  • Layered architecture guidance: separation of concerns across presentation, application, domain, and infrastructure.
  • Dependency injection and middleware patterns: correct service lifetimes, middleware ordering, and hosted services.
  • EF Core data access, validation, logging, and testing practices for reliable, auditable systems.
  • Use cases: API development with MVC or Minimal APIs, background tasks, and production-readiness checks.

Quick Start

Create a new ASP.NET Core project and apply the recommended layered architecture and DI patterns to bootstrap a maintainable API.

Frequently Asked Questions about dotnet-development

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure an ASP.NET Core API with clean architecture?

Structure your ASP.NET Core API by separating concerns across presentation, application, domain, and infrastructure layers. This clean architecture approach reduces coupling, simplifies testing, and ensures maintainable services with clear boundaries.

What is the correct way to configure dependency injection lifetimes in ASP.NET Core?

Configure dependency injection by matching service lifetimes to their usage scope. Correct DI lifetimes prevent captive dependencies and ensure proper object lifecycle management across your application's presentation, application, and infrastructure layers.

How do I implement EF Core data access in a layered ASP.NET Core application?

Implement EF Core data access by isolating database contexts within the infrastructure layer. This boundary separation keeps data access logic decoupled from domain and presentation concerns, resulting in reliable and auditable systems.

Can I use Minimal APIs instead of MVC controllers for enterprise-grade ASP.NET Core services?

Yes, you can use Minimal APIs or MVC controllers. Both approaches are supported for API development, allowing you to build maintainable ASP.NET Core services with proper layering, validation, and observable telemetry.

How do I propagate async cancellation tokens through ASP.NET Core middleware?

Propagate async cancellation by passing tokens through middleware pipelines and application services. Proper cancellation propagation ensures graceful termination of long-running operations and background tasks without leaving orphaned processes.

What testing strategies should I use for ASP.NET Core services with dependency injection?

Use testing strategies that leverage dependency injection to mock or stub service boundaries. Isolating domain and application layers during tests verifies business logic reliability while maintaining clear architectural separation.