Courses and Conferences

DTI Main Reception

Do you need help?

  • Gregersensvej 8
  • 2630 Taastrup
Google MapsApple MapsRejseplanen
  • Forskerparken Fyn, Forskerparken 10F
  • 5230 Odense M
Google MapsApple MapsRejseplanen
  • Teknologiparken Kongsvang Allé 29
  • 8000 Aarhus C
Google MapsApple MapsRejseplanen
  • NordsøcentretPostboks 104
  • 9850Hirtshals
Google MapsApple MapsRejseplanen
  • Gammel Ålbovej 1
  • 6092Sønder Stenderup
Google MapsApple MapsRejseplanen

ASP.NET Core Minimal APIs in C#

Build Production-Ready RESTful APIs with Modern .NET

>> Available in Danish <<

Learn the streamlined approach that reduces boilerplate code while maintaining enterprise-grade quality, security, and performance. Move beyond basic CRUD operations. This hands-on course covers authentication, authorization, testing, error handling, logging, performance optimization, and architectural patterns—everything needed to build production-ready APIs that scale.

Audience

Backend developers wanting to master modern API development with .NET, C# developers ready to adopt Minimal APIs for new projects, ASP.NET developers upgrading from traditional controllers or older .NET versions, Full-stack developers needing a solid foundation in API design and implementation. Software architects evaluating Minimal APIs for microservices or enterprise systems

Prerequisites

Basic C# knowledge (6+ months experience). Understanding of HTTP and REST concepts helpful but not required.

 

Why Minimal APIs?

 
Less Boilerplate
  • Fewer files and classes to manage
  • Direct route-to-handler mapping
  • Reduced ceremony for simple endpoints
 
Better Performance
  • Faster startup times
  • Reduced memory footprint
  • Optimized for high-throughput scenarios
 
Modern C# Features
  • Leverages latest C# language features
  • Functional programming patterns
  • Strong typing with type inference
 
Perfect for
  • Microservices architecture
  • Serverless functions
  • Lightweight APIs
  • High-performance scenarios
  • Modern cloud-native applications

Content

1. Introduction to Minimal APIs
  • Minimal APIs vs MVC controllers comparison
  • Performance characteristics and benchmarks
  • When to use Minimal APIs
2. Environment Setup
  • .NET SDK installation and verification
  • IDE setup (Visual Studio, VS Code, Rider)
  • Project structure and organization
3. ASP.NET Core Fundamentals
  • ASP.NET Core architecture
  • Program.cs and WebApplication
  • Middleware pipeline
  • Configuration system (appsettings.json, environment variables, user secrets)
4. Building Minimal API Endpoints
  • Endpoint definitions and lambda expressions
  • Route templates, parameters, and constraints
  • HTTP verbs (GET, POST, PUT, DELETE, PATCH)
  • Request binding (route, query, body, headers, forms)
  • Response serialization and content negotiation
5. Results and Response Types
  • IResult interface fundamentals
  • Results vs TypedResults comparison
  • Common result types (Ok, Created, NotFound, BadRequest, NoContent)
  • Custom result types and content negotiation
  • Proper HTTP status codes and headers
  • OpenAPI documentation benefits
6. OpenAPI and Documentation
  • OpenAPI/Swagger setup and configuration
  • Testing endpoints with Swagger UI
  • Customizing API documentation with XML comments
  • API versioning strategies
  • Generating client code from OpenAPI specs
7. Middleware and Filters
  • Middleware pipeline
  • Custom middleware patterns (inline, class-based, factory-based)
  • Endpoint filters for request/response manipulation
  • Filter ordering and execution flow
  • When to use middleware vs filters
8. Validation
  • DataAnnotations for simple validation
  • FluentValidation for complex scenarios
  • Custom validators for business rules
  • Endpoint filters for validation
9. Dependency Injection
  • DI fundamentals in ASP.NET Core
  • Service lifetimes (transient, scoped, singleton)
  • Constructor injection in endpoints
  • Options pattern for configuration
10. Entity Framework Core
  • EF Core setup and DbContext configuration
  • Entity modeling and relationships (one-to-many, many-to-many)
  • Migrations workflow
  • LINQ queries (filtering, sorting, projection, aggregation)
  • IQueryable vs IEnumerable
11. Clean Architecture
  • Layered architecture
  • Domain, Application, Infrastructure, and API layers
  • Dependency inversion
  • Project structure
12. Repository Pattern
  • Repository pattern
  • Generic repository implementation
  • Unit of Work pattern
  • EF Core integration
13. Testing
  • Unit testing
  • Mocking
  • Testing Minimal API endpoints
  • Integration testing with WebApplicationFactory
  • Testing authenticated endpoints
  • AAA (Arrange-Act-Assert) pattern
14. Authentication
  • ASP.NET Core Identity setup
  • JWT token generation and validation
  • User registration and login endpoints
  • Refresh token patterns
15. Authorization
  • Role-based authorization
  • Policy-based authorization
  • Claims and custom policies
  • [Authorize] attribute
16. Error Handling
  • Global exception middleware
  • Problem Details (RFC 7807)
  • Custom exception types
  • Development vs production error details
17. Logging
  • Structured logging with Serilog
  • Log levels
  • Multiple sinks (console, file, database)
  • Correlation IDs
18. Code Organization
  • Extension methods for endpoint registration
  • Route groups and prefixes
  • Vertical slice architecture
  • Feature-based organization
19. Performance Optimization
  • Response caching strategies
  • In-memory caching with IMemoryCache
  • Distributed caching concepts
  • Rate limiting and throttling
  • EF Core query optimization (AsNoTracking, compiled queries)
  • Async/await patterns
20. Deployment and Production
  • Health checks
  • CORS configuration
  • Environment-specific configuration
  • Background services and hosted services
  • Azure deployment
  • Monitoring

Instructor

Underviser Rick Beerendonk
Rick is a senior consultant and trainer from The Netherlands.
He has over 25 years of professional experience while working in small, large and fast growing organisations.
His passion is simplicity, wellwritten code and team dynamics.
He is specialised in front-end technologies and speaks regularly about these topics at international events.

Do you have any course related questions, please contact