ASP.NET Core 3.0 Development

This course covers ASP.NET Core 3.0 and Visual Studio 2019, making use of various new features in C#8. We take a detailed look at the latest APIs and development techniques for creating dynamic, modular, and testable web sites. We'll explore the new features available in ASP.NET Core and show how to get the best out of the latest toolset and integration possibilities.

Duration

5 days

 

Prerequisites

  • 6 months experience of C# programming
  • ASP.NET development experience is advantageous but not essential

What you'll learn

  • ASP.NET Core principles
  • MVC architecture and benefits
  • Creating views, view components, and tag helpers
  • Using ASP.NET dependency injection and configuration
  • Test-driven development
  • Navigation and state management
  • Creating RESTful services using Web API
  • Creating Single Page Applications (SPAs)
  • ASP.NET Identity security

Course details

Introduction to ASP.NET Core

  • Introduction to .NET Core
  • ASP.NET Core essentials
  • Creating a simple ASP.NET Core web app
  • Using the generic host builder in ASP.NET Core 3
  • A closer look at ASP.NET Core middleware
  • Creating custom OWIN middleware components

Getting Started with MVC

  • Introduction to ASP.NET Core MVC
  • Understanding controllers
  • Understanding views
  • Layout pages
  • A closer look at Razor syntax
  • Razor pages

Creating a Complete ASP.NET MVC Application

  • Design considerations
  • Defining models and views
  • Handling form submissions
  • Additional techniques
  • Asynchronous action methods

Tag Helpers

  • Introduction to tag helpers
  • UI tag helpers
  • Link and script tag helpers
  • Environment tag helper
  • Cache tag helper

Structuring ASP.NET Core MVC Applications

  • Design considerations
  • Defining the domain model
  • Defining the Web application

Dependency Injection, Configuration, and Entity Framework

  • Dependency injection principles
  • DI in ASP.NET Core
  • Configuration in ASP.NET Core
  • Using Entity Framework Core 3.0

Test Driven Development with ASP Core MVC

  • TDD principles
  • Unit testing frameworks for .NET Core
  • XUnit.net walkthrough
  • Unit testing ASP.NET MVC controllers
  • Mocking

Defining Custom Tag Helpers

  • Custom tag helpers
  • Tag attributes
  • Additional techniques
  • Worked example

Implementing Navigation

  • Defining view-model classes
  • Implementing data filtering in a controller
  • Understanding the routing mechanism
  • Adding custom entries to a route table
  • Defining defaults, parameters, and validation
  • Generating URLs and hyperlinks
  • Custom route constraints

State Management

  • Using hidden fields
  • Session and application state
  • Custom model bindings
  • Distributed caching

Creating RESTful Services using Web API

  • Overview of Web API
  • Building servers and clients
  • Content negotiation
  • Attribute routing
  • Custom model binding
  • Invoking RESTful services from Ajax clients

Creating Single Page Applications

  • Overview of SPAs
  • Using GruntJS, NPM, and Bower support
  • Creating SPAs using Angular 4 and Knockout

Security using ASP.NET Identity

  • Security concepts
  • Overview of ASP.NET Identity
  • Customization possibilities using ASP.NET Identity