Course Description

ASP.NET Core Blazor (.NET 5 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.  Blazor relies on existing mature technologies like SingalR, WebAssembly and ASP.NET Core. It is being adopted or has already been adopted by most companies that utilizes Microsoft technologies. If you want to get employed in these companies, knowing how to build applications with Blazor is required or will be required very soon along with Razor pages, MVC and Web API.


PLEASE NOTE: This course is for learning Blazor and Clean Architecture while building an e-commerce app. The e-commerce app we are building is not full featured and DOES NOT include things like payment, shipping, it does include product listing, placing orders and processing orders as admins.


In this course with 9 sections, more than 70 lectures and about 8 hours of content, you will not only follow me step by step and master Blazor, but you will also work with me implementing a good sized e-Commerce web application following Clean Architecture, starting from requirements analysis, software design, all the way to the final implementation. 


The course covers the following technical topics:

  • ASP.NET Core Platform

  • Every aspect of ASP.NET Blazor

  • Components State Management

  • Dependency Injection

  • Authentication and Authorization with ASP.NET Core Identity

  • Custom Cookie Authentication

  • AutoMapper

  • Dapper

  • SQL Statements

  • HTML

  • Bootstrap

  • Requirements Analysis and Software Design

  • Clean Architecture

  • Repository for encapsulating data accessing details


By the end of the course, you will:

  • Know every aspect of Blazor in depth.

  • Be able to independently build web applications with Blazor.

  • Be able to analyze requirements and design software.

  • Understand and be able to Implement Clean Architecture.

  • And much more...


You will be building a good sized real world secured e-Commerce application with me. Together, we will build both the customer portal that allows customers to browse products catalog, add products to shopping cart, place orders and  admin portals that allows store owners to login and manage the orders.


After following the lessons and exercises in this course, you will have a good understanding of ASP.NET Core platform and you will be able to create single page web applications with Blazor Server. You will also have a good understanding of Clean Architecture and be able to use what you have learned about architecture in your own project. 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: ASP.NET CORE 5 Blazor.


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 

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 and Details

In the first two sections, we will learn about Blazor by creating part of the e-Commerce web application without hearing me talking too much about each topic of Blazor. The purpose of this is to fast track your learning experience and provide you with a solid foundation of coding web applications with Blazor. 


In the third section, I will go through all the topics about Blazor one by one in depth. 


Starting from the fifth section, we will together implement both the customer portal and the admin portal of our e-Commerce with authentication and authorization. 


When implementing the solution, you will hear me cover Clean Architecture and you will see how I implement a Use Case Driven and Plugin Based clean architecture that is highly testable and extremely flexible for future extensions. I will show you how I do it and explain why I do it in certain ways. If you really follow these hands-on sections and implement the project with me, you will definitely learn a lot from the process of building this real world application.


In this course, both the shopping cart and Data store (database) will be implemented as plugins. We will implement two types of data store plugins: an in-memory data store and a SQL Server data store with Dapper as the micro ORM. You will see clearly how powerful it is to build solutions with this kind of architecture. (Disclaimer: Architectural choices should be made case by case, I don’t suggest you to follow my architecture presented in this course in all projects. Analysis is needed all the time.)


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 comprehensive course to fill in the gaps.

  • Developers who are curious about Mirosoft's newest SPA application framework: Blazor.

  • Developers who want to learn about implementing Clean Architecture.


Course curriculum

    1. 1. Blazor Introduction

    2. 1.1 ASP.NET Core Platform

    3. 1.2 How a Blazor app is Bootstrapped

    4. 1.3 Understanding project structure

    5. 1.4 Adding Dynamic Content

    6. 1.5 View, State and Events - Three main aspects of components

    7. 1.6 - Summary of Section 1

    8. Source Code for entire Application

    1. 2.1 Introduction

    2. 2.2 Screen Mockup and Components Breakdown

    3. 2.3 Analysis and Design

    4. 2.4 Implementing Core Business Layer

    5. 2.5 Implementing Use Cases Layer

    6. 2.6 Data Store Plugin Interface

    7. 2.7 Implement In-Memory Data Store Plugin

    8. 2.8 Create Search Products Component

    9. 2.9 Implement the Search Products Screen

    10. 2.10 Implement the Search Bar Component

    11. 2.11 Implement Product Item Component

    12. 2.12 Implement Filtering

    13. 2.13 Styling with BootStrap

    14. 2.14 View Product Details Component

    15. 2.15 Summary of Section 2

    1. 3.1 DataBinding #1

    2. 3.2 DataBinding #2

    3. 3.3 Overview of Communication Between Components

    4. 3.4 Review Parameters, Route Parameters and EventCallback

    5. 3.5 Cascading Parameters

    6. 3.6 Referencing Child Componnent

    7. 3.7 RenderFragment

    8. 3.8 When does a component render

    9. 3.9 Component Lifecycle Events

    10. 3.10. Forms and Validations

    11. 3.11 State Management with Observer Pattern

    1. 4.1 Dependency Problems

    2. 4.2. Dependency Inversion Principle

    3. 4.3. Inversion of Control

    4. 4.4. Dependency Injection in Razor Components

    5. 4.5. Lifetime Management in Blazor Server

    6. 4.6. How to Choose the Lifetime Management

    7. 4.7. Lifetime Management in Blazor WebAssembly

    1. 5.1 Reorganize Projects to Reflect the Architecture

    2. Source Code for Reorganization

    3. 5.2 Order Entity and Business Rules

    4. 5.3 Shopping Cart Abstraction

    5. 5.4 Add Product to Shopping Cart Use Case

    6. 5.5 Implement Shopping Cart Plugin

    7. 5.6 Test Add Product to Cart Use Case

    8. 5.7 Improve Web UI

    9. 5.8 View Shopping Cart Use Case

    10. 5.9 View Shopping Cart Component

    11. 5.10 Order Line Item Component

    12. 5.11 Order Summary Component

    13. 5.12 Shopping Cart State Management

    14. 5.13 Shopping Cart Items Count Component

    15. 5.14 Delete Product and Update Quantity Use Cases

    16. 5.15 Delete and Update on Order Line Item Component

    17. 5.16 Order Repository

    18. 5.17 Place Order Use Case

    19. 5.18 Place Order Component

    20. 5.19 Order Confirmation Use Case and Screen

    1. 6.1 Admin Use Cases

    2. 6.2 Admin Portal Screens

About this course

  • $169.00
  • 80 lessons
  • 7.5 hours of video content

One-time Payment

Buy this course and own it for a lifetime.

ALL-ACCESS Subscription

Access all my courses with one low monthly price.

ALL-ACCESS Subscriptionarly

Access all my courses with a low yearly price. That's 30% Off comparing with the monthly plan.