
Discover clean architecture, an onion structure with entities and use cases at the core and databases and IO devices on the outside, driven by use cases and plugin interfaces.
Explore dependency injection lifetime management in Blazor, registering interfaces in the service collection and choosing transient, scoped, and singleton lifetimes; contrast use cases with an in-memory inventory repository.
Create an add inventory button on the inventory list page that navigates to a new razor page at /add inventory, introducing an empty Add Inventory page component titled Add Inventory.
Implement the view inventory by id use case to load existing inventory when the page opens, using the repository’s get inventory by id async method via dependency injection.
Learn to implement secure delete in Blazor using enhanced form handling: a unique per-item form name via explicit Razor syntax, post back, and navigation manager refresh.
Implement real-time inventory filtering using two-way data binding on input with oninput, updating a state variable and using state has changed to rerender after asynchronous data retrieval.
Isolate component styles by moving inline CSS into a component-specific style sheet, created alongside the Razor component, ensuring no class-name conflicts and verifying the result by running the app.
Implement the edit product use case by injecting the product repository, validating unique product names, and updating product properties through the repository, with an async execute method.
Learn to prevent enter-triggered form submission in Blazor using JavaScript interop with IJSRuntime, registering a one-time script after render and a prevent-default listener.
Explore .NET 10 JavaScript interop updates, including getvalue async, setvalue async, invoke async, and invoke constructor async, using the window object and a car class example to access inner properties.
Design a sell product use case with an async execute method, sales order number, inject product and product transaction repositories, record a sale transaction, and decrease quantity to update inventory.
Blazor (.NET 10 Blazor) is Microsoft latest SPA application framework. With Blazor you can build reactive full stack single page web applications with C# without much help from JavaScript. More and more companies are adopting Blazor as part of their technology stack. If you haven't started learning Blazor, now is the time to do so.
This course takes you onto a journey of creating an Inventory Management System with Blazor Server Side Rendering in .NET 10, Entity Framework Core, SQL Server and ASP.NET Core Identity. We are going to use Clean Architecture with use case driven development. All core concepts of Blazor are covered while we are implementing each feature of this application. It is really good for someone who hasn't learned Blazor yet. But if you are already familiar with Blazor and are looking for a project to practice, or looking to catch up with the latest changes to Blazor in .NET 10, this course will suit you well too.
The course covers the following technical topics:
ASP.NET Core Blazor Static SSR
ASP.NET Core Blazor Interactive SSR
Dependency Injection
Authentication and Authorization with ASP.NET Core Identity
Policy based Authorization
Entity Framework Core
HTML
Bootstrap
Software Design
Clean Architecture
Repository for encapsulating data accessing details
Use Case Driven Development
By the end of the course, you will:
Be able to independently build web applications with Blazor.
Be able to use Entity Framework Core to work with SQL Server database.
Be able to protect web applications with Identity.
Understand and be able to Implement Clean Architecture.
And much more...
At the end of the course, you will become a full stack web developer knowing how to create web applications with Microsoft’s latest application framework: Blazor in .NET 10.
Whether you're new to ASP.NET Core Blazor or have worked with it for a bit, but are looking for a course to fill in the gaps, you will enjoy this course. Since this course not only cover the basics, but goes into each topic in depth.
PREREQUISITES
Intermediate C# (you should have at least 3 - 6 months experience programming in C#)
Basic HTML
Basic SQL Server
Previous knowledge of ASP.NET Core is nice to have, but it is not required since I will cover it in the course.
The Course Structure
Although this is course is all about practice, all core concepts of Blazor, Entity Framework Core, ASP.NET Core Identity etc. are covered while each feature of the app is being implemented. Coding along is highly recommended.
Who this course is for
C# developers who want to become full stack developers without the hassle of mastering JavaScript.
Developers who work with Razor pages and/or MVC along with front end frameworks/libraries and would prefer work with less JavaScript.
Developers with some experience in Blazor who is looking for a mid-size project to practice.
Developers with experiences in Blazor previously but would like to catch up with the overwhelming changes to Blazor in .NET 10.
Developers who are curious about Mirosoft's newest SPA application framework: Blazor.
Developers who want to learn about implementing Clean Architecture.