aspnet-core

Build, review, and refactor ASP.NET Core web applications using current official guidance.

Updated Jun 14, 2026
One-click install
npx skills add https://github.com/ironkid90-s/lucky5-v7 --skill aspnet-core-ironkid90-s
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: aspnet-core
Source: https://github.com/ironkid90-s/lucky5-v7/tree/main/.github/skills/aspnet-core
Command: npx skills add https://github.com/ironkid90-s/lucky5-v7 --skill aspnet-core-ironkid90-s

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Choosing the right ASP.NET Core application model and keeping up with framework changes across versions is difficult, and outdated patterns like legacy Startup classes or misordered middleware cause subtle bugs. This Skill provides curated, version-aware guidance so you build Blazor apps, Razor Pages, MVC sites, Minimal APIs, and SignalR services the way Microsoft documents today. ## Core Features & Use Cases - Stack Selection: Choose between Blazor Web Apps, Razor Pages, MVC, Minimal APIs, controller-based Web APIs, SignalR, and gRPC with a decision matrix and fast heuristics. - Pipeline & Architecture Guidance: Structure Program.cs, dependency injection, configuration, middleware ordering, routing, and error handling correctly. - Cross-Cutting References: Apply security and Identity, EF Core data access, testing, performance, deployment, and version-upgrade guidance on demand. - Use Case: You need to add a Minimal API with authentication to an existing .NET 9 solution. The Skill routes you to the API reference, then the security reference, ensuring correct middleware order and ProblemDetails error responses. ## Quick Start Ask the assistant to create a new ASP.NET Core Web API with authentication and health checks using current best practices.

Frequently Asked Questions about aspnet-core

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

FAQPage Schema
How do I choose between Minimal APIs and controller-based Web APIs in ASP.NET Core?

Minimal APIs fit small to medium HTTP surfaces with concise endpoint definitions, while controllers suit APIs needing [ApiController] behaviors, filters, custom formatters, and attribute-driven conventions. Avoid mixing both styles in the same feature unless the split is genuinely useful.

How do I structure Program.cs and middleware order in ASP.NET Core?

Use WebApplication.CreateBuilder, register services, then configure middleware in order: forwarded headers, exception handling and HSTS, HTTPS redirection, static files, routing, CORS, authentication, authorization, then endpoint mapping. Always call UseAuthentication before UseAuthorization.

Blazor vs Razor Pages vs MVC: which ASP.NET Core app model should I use?

Choose Blazor Web Apps for component-based .NET UI with SSR and interactivity, Razor Pages for page-focused CRUD and form workflows, and MVC for large server-rendered apps needing controllers, filters, and action-level authorization. Keep the existing app model in established codebases.

What breaking changes should I watch for when upgrading to ASP.NET Core 10?

Key changes include cookie login redirects disabled for known API endpoints, WithOpenApi deprecation, obsolescence of WebHostBuilder and WebHost, and Razor runtime compilation obsolescence. Read the breaking-changes pages for each version hop and re-run integration tests after upgrading.

Does ASP.NET Core Minimal API support built-in validation?

On .NET 10, Minimal APIs support built-in validation via AddValidation(), so you can use it instead of custom validation infrastructure. On earlier targets, use endpoint filters or library-based validation approaches.

When should I not use Blazor for a web application?

Avoid Blazor when a conventional server-rendered app already fits Razor Pages or MVC well, and do not choose WebAssembly by default for small interaction needs that SSR or interactive server rendering handles more simply. Interactive server rendering also requires a persistent connection.