Modern Web Application Development for .NET Developers

.NET Web

Web development has evolved. Although that's nothing new, the pace at which things are changing has picked up so much that it's hard to keep up with the latest and greatest. Both on the server-side and on the client-side, we have new frameworks and new ways of working available that make developers more productive.

In this course, developers will get a solid understanding of modern ways to build web applications. We will start on the server-side where Microsoft has introduced ASP.NET Core, a new way of building ASP.NET applications. This course covers ASP.NET Core 2 MVC (latest version). While exploring the many facets of ASP.NET Core, students will understand the MVC pattern and how it's implemented by Microsoft. Working with data is explained using Entity Framework Core 2.

Next to the server-side, students will also get to understand modern ways to improve their web applications from the client-side's perspective. First, we will make sure that everyone is on board with the basic concepts of both CSS and JavaScript. Next, students will understand how modern web applications are built using frameworks such as Bootstrap and Angular. While doing so, students will also learn how ASP.NET Core can be used to expose API endpoints to allow for easy access to data via REST.

Finally, this course will give students an insight in how this all ties into the cloud using Azure. Students will get to understand how ASP.NET Core and APIs can be hosted in the cloud, including the databases created with EF Core.

Prerequisites

C# knowledge is expected. Basic knowledge of HTML is expected as well. No previous JavaScript knowledge is expected as students will get to see client-side development from scratch. Note that the course will focus on the use of Visual Studio 2017

Who is this course for?

This course is intended for developers wanting to start web development. This course can also be used for developers who have been doing other types of web development, for example WebForms.

Course outline:

Part 1: ASP.NET Core on the server-side

  • Overview of ASP.NET Core, .NET Standard and .NET Core
  • Hello ASP.NET Core MVC
  • Site configuration
    • Middleware
    • Diagnostics pipeline
  • Creating pages with ASP.NET Core
  • Entity Framework Core
  • Working with the view
    • Razor
    • Tag Helpers
    • Custom tag helpers
    • View Components
  • Routing and navigation
    • Convention-based routing
    • Attribute-based routing
  • Forms and model binding
  • Security model with ASP.NET Identity
    • Authentication
    • Authorization
      • Roles
      • Policies
      • Third-party authentication
    • Threats for ASP.NET Core application and how to mitigate them
  • Unit testing ASP.NET Core applications
  • Validation
    • Server-side
    • Client-side
    • Custom validation rules and attributes
  • Filters
  • Adding Diagnostics
  • Logging
    • Built-in logging
    • Third-party logging providers
  • Creating APIs with ASP.NET Core
    • Response codes
  • Routing
  • Performance optimization
    • Caching
  • Distributed caching
  • Deployment
    • Azure
    • Automation with VSTS

Part 2: Moving to the client

  • Fundamentals of JavaScript and jQuery
  • Fundamentals of CSS and Bootstrap
  • Fundamentals of TypeScript
  • Understanding the core concepts of Angular
  • Binding the views using Angular
  • Working with components and directives
  • Creating a simple form with Angular

Part 3: Integrating with the cloud

  • An overview of Azure
  • Working with Azure App Services
  • Databases in the cloud

Tid

09:00 - 17:00