IT Training

Building Web Applications with ASP.NET

This course will teach you how to build Web applications using the ASP.NET Core MVC (model-view-controller) framework and patterns in .NET 6. This includes interacting with a database using Entity Framework Core; and creating and consuming RESTful services with ASP.NET Core Web API and JavaScript.

Who should attend this course?

This course is intended for programmers working in .NET 6 with C#.

Prerequisites

Students should have a good knowledge of one of the .NET programming languages C# (or VB.NET). Furthermore, a basic knowledge of HTML is advised.

The HTTP Protocol

You can’t start developing for the web without knowing the fundamentals of HTTP. This module talks about the HTTP protocol used to request resources from the server. We’ll explore the details of what is used for a browser and for a server to make sure the communication is legitimate.

  • Http Methods
  • Headers
  • Status Codes
  • Redirection
  • Caching

ASP.NET Core MVC: Introduction

In this module You will learn about the MVC pattern and why this pattern fits so well in the world of websites.

  • The Model-View-Controller (MVC) pattern
  • MVC in ASP.NET Core
  • Client-centric versus Server-centric applications

The 3 Main ASP.NET Core MVC Components

Once you understand MVC, you need to learn how it is implemented in ASP.NET Core. This module explores the most important components of the framework.

  • Handling the user interaction with Controller
  • Rendering the response with MVC views
  • Creating a MVC Model and ViewModel
  • Understanding Routing
  • LAB: The 3 main ASP.NET Core Components

Introduction to Entity Framework Core

Entity Framework Core allows us to map the relational world to the world of objects. You will learn how to model your database in EF Core and apply the changes with Code-first Migrations.

  • Decoupling Conceptual from Logical Data Structure
  • Modelling with Conventions, Attributes, or Fluent API
  • Creating and Applying Migrations
  • Querying Data with LINQ
  • Updating Data
  • LAB: Modelling a Database with EF Core

ViewModels

This module will teach you about ViewModels, which helps maintaining a clean separation between the Model and Views.

  • Passing Data to a View
  • ViewModels
  • Mapping between Model and ViewModel
  • LAB: Using ViewModels

ASP.NET Core Pipeline

ASP.NET Core easily outperforms all other web hosting solutions. So how did they do that? Here we will look at the ASP.NET Core pipeline, and how to make it do your bidding.

  • The principle of the ASP.NET Core Pipeline
  • Building the Pipeline using Middleware
  • Understanding Dependency Injection

End-point Routing

On the web the URL decides what the server will do. In ASP.NET Core you will find the End-point Routing Middleware. A solid understanding of this middleware is required to build applications with ASP.NET Core.

  • Getting Started with Routing Concepts
  • Defining Routing Templates
  • Route Parameter Constraints
  • Route Parameter Transformers
  • Understanding Route Matching
  • Using Conventional vs. Attribute Routing
  • Routing Attributes
  • Handling Routing Errors
  • LAB: Routing in ASP.NET Core MVC

ASP.NET Core MVC Controllers

In this module we’ll take a closer look at the C in MVC. The controller has a very important role to fulfill: It’s the component that figures out what to do when receiving a request.

  • Model Binding
  • Different Action Results
  • Working with GET and POST
  • Action Filters
  • Redirections
  • LAB: using MVC Controllers

Responsive Web Design with Bootstrap

Your web site needs to look fabulous on any device; whether it’s a laptop, tablet or phone. Let’s bootstrap be your guide in the messy world of media queries.

  • Normalizing and Resetting
  • The Grid System
  • Utility classes
  • Bootstrap Components
  • Customizing Bootstrap

JavaScript Language Fundamentals

In this module, we’ll talk about the very basics of JavaScript. JavaScript can be a very tricky language, so we’ll try to explain a couple of its quirks as well. This way, we can avoid surprises later.

  • Variables
  • Primitives and Objects
  • Functions and Scope
  • Error Handling
  • LAB: Language Fundamentals

Razor Views

In this module you’ll explore Razor and its syntax. You’ll see the basics as well as some advanced scenarios.

  • Views and View Engines
  • Layout and Sections
  • HTML and Tag Helpers
  • Partial Views
  • LAB: Sections and HTML Helpers

Data Validation

  • Explicit versus Implicit Validation
  • Validating data using Data Annotations
  • Self-Validating Models
  • Validating using the Model Binder
  • Client-side validation with Unobtrusive JavaScript
  • LAB: Data Validation

ASP.NET Core MVC Dependency Injection & Testing

Dependency Injection is the art of decoupling an object from its dependencies. Next to benefits like maintainability and separation of concerns, it also makes testing a lot easier. In this module you will use dependency injection to create your first unit tests.

  • Methods of Dependency Injection
  • Dependency Inversion, Explicit Dependencies, and Inversion of Control
  • Unit Testing your Components
  • Stubbing, Mocking & Faking
  • LAB: Dependency Injection in MVC

Building RESTful Services with Web API

If you are building a more client-centric application, it is important to send data back and forth between your client and server. Web API uses REST to send data. It’s based on the same principles as MVC.

  • What is REST?
  • Building a REST Web-API with ASP.NET Core Web API
  • Supporting multiple representations: XML and JSON
  • LAB: Building a REST API

Consuming Web APIs

After you’ve built your server with Web API, it’s time to jump over the fence and take a look at how people will consume it. In this module you will learn how .NET applications, as well as JavaScript applications can easily consume your Web API.

  • Consuming a Web API from .NET
  • Best Practices for the .NET HttpClient
  • Using the Swagger CodeGen Client
  • Consuming a Web API from JavaScript with Fetch
  • Web APIs and JavaScript Frameworks
  • LAB: Building a Client for your Web API

Authentication

Authentication is about identifying who the user of the system is. In this chapter we look at the different authentication mechanisms and their application.

  • Knock Knock… Who’s There?
  • Windows Integrated
  • Username and Password
  • Extending Authentication with your own Data
  • Using the Microsoft Identity Platform
  • Authorization with Policies

Practical information

Duration

5 Days

Languages

EN

Price

€ 2 100 + 3% VAT

Location

Virtual Classroom Course

Schedule

Guaranteed to run

Sessions in English
19 - 23/2/2024Book
08 - 12/4/2024Book
03 - 07/6/2024Book
05 - 09/8/2024Book
30 Sep & 01 - 04 OctBook
25 - 29/11/2024Book

Share this course on

Book your training

Enter your information to confirm your booking.

    Prerequisite test

    Looking for a tailor made solution?