
Explores software architecture styles, from monolithic apps housed in a single dll to layered designs with presentation, services, and data access layers, highlighting scalability and maintenance trade-offs; introduce clean architecture.
Explore clean architecture in ASP.NET Core by placing business logic at the center, independent of databases, logging, file system access, guided by dependency inversion, separation of concerns, and persistence ignorance.
Begin building the application layer in clean architecture. Discuss what to include in that layer, introduce the pattern, and start coding to solve user tasks.
Coordinate a feature set by orchestrating domain driven actions without infrastructure or UI dependencies, using contracts and the dependency inversion principle to implement tasks like creating appointments.
Explore the CQRS pattern by separating commands that modify state from queries that read data, and learn command and query handlers, single responsibility, testable and maintainable code, and feature-based organization.
Unit tests validate the dental office detail query handler using a mocked repository, confirming a DTO with id and name, and a not found exception when the office is missing.
Begin implementing the infrastructure layer, focusing on persistence and database communication within the clean architecture with ASP.NET Core.
Understand the infrastructure layer as the outer boundary that connects the app to databases, cloud services, and external systems, while implementing inner layer contracts and applying dependency inversion.
Create the api project for a clean architecture app by adding a web api with controllers, naming it clean teeth dot api, and consider minimal apis by unchecking the checkbox.
The presentation layer serves as the entry point, validating data and translating requests into commands or queries, then delegates to the application layer via a mediator, preserving separation of concerns.
Learn to retrieve a dental office by id in a clean architecture ASP.NET Core app using a mediator query, including JSON tests and not found handling.
Implement delete dental office via a delete command and handler, use repository and unit of work, throw not found if absent, and expose an http delete endpoint returning no content.
We extend the patients filter dto with optional name and email fields, then build a dynamic IQueryable query to filter by name or email and return matching patients.
implement a cancel appointment feature in a clean architecture ASP.NET Core app by adding a cancel appointment command and handler, repository, and mediator-driven endpoint with commit and rollback.
Explore authentication and authorization configuration in a clean architecture project. Learn a basic setup that highlights realistic security considerations without deep dives.
Configure authentication and authorization in a clean architecture project using identity for login and registration, with a separate context for identity tables and claim-based authorization to protect web api endpoints.
Do you want to take your .NET applications to the next level?
In this course, you’ll learn step by step how to implement Clean Architecture with ASP.NET Core, developing a real application from scratch with principles that will allow you to build professional, maintainable, and scalable software.
Throughout the lessons, you’ll discover how to structure your code so it’s easy to test, extend, and maintain, applying best practices such as Dependency Inversion, Separation of Concerns, and the Single Responsibility Principle.
You’ll implement CQRS to separate commands and queries, use the Mediator pattern to centralize communication with features, handle transactions with Unit of Work, and apply validations in an elegant and consistent way. You’ll also learn how to configure authentication and authorization with Identity, and how to integrate services such as email sending without coupling them to your domain.
By the end of the course, you will be able to:
Model the domain with entities, value objects, and aggregates.
Create use cases with CQRS and Mediator.
Implement repositories and Unit of Work with EF Core.
Build clean, scalable APIs with ASP.NET Core.
Configure security with authentication and claim-based authorization.
Integrate external services in a decoupled way.
Learn how to build robust applications that stand the test of time and become a software developer who delivers professional-quality solutions.