Web Development · WDC-36

ASP.NET Core MVC with .NET 10

ASP.NET Core MVC with .NET 10 is a course in building web applications with C# and Razor on .NET 10, covering controllers, views and routing, SQL Server with EF Core, sign-in with Identity and Web APIs through to deployment on Linux and Docker. It suits .NET developers, IT teams and students with some HTML and C#.

Updated
From 9,000 THB / person 10,000 −10% excl. VAT 7% · group rates available
PDFDownload the course outline
  • Duration18 hours · 3 days
  • FormatOnsite / live online
  • Next round1–3 Dec 26
  • CertificateIncluded

Course overview

ASP.NET Core is Microsoft's main framework for building web applications and APIs on .NET, and it runs on Windows, macOS and Linux. Today .NET 10 is the LTS release that organisations choose for the long term, yet many books and code samples still follow the .NET Core 2 era, with Startup.cs, ViewBag and packages that have since been retired, which leaves newcomers unsure how to write code that is correct and easy to maintain.

This course takes learners step by step through building a web application with ASP.NET Core MVC on .NET 10 and current C#. It starts with the project structure, Program.cs, dependency injection and configuration, then covers controllers, routing and Razor views with tag helpers, forms with validation, and SQL Server data with Entity Framework Core 10. Learners then add membership with ASP.NET Core Identity, build a Web API with the built-in OpenAPI document, call it with HttpClient and deploy the application to Ubuntu Linux with both Nginx and Docker. It closes with a workshop that builds a real web application from start to finish. (3 days, 6 hours per day, 18 hours in total, Beginner to Intermediate level.)

What you’ll gain

  • Understand the MVC pattern and the structure of an ASP.NET Core application on .NET 10
  • Use dependency injection, middleware and configuration correctly
  • Write controllers, routing and Razor views with tag helpers and view models
  • Build forms that validate input safely on both client and server
  • Manage SQL Server data with EF Core 10 using code-first and migrations
  • Add sign-in and authorisation with ASP.NET Core Identity
  • Build Web APIs with OpenAPI documents and call them with HttpClient
  • Deploy applications to Ubuntu Linux with Nginx and with Docker containers

Who this course is for

  • Developers who want to start building web applications with .NET and C#
  • ASP.NET Web Forms or .NET Framework developers moving to ASP.NET Core
  • IT staff who build or maintain internal business systems
  • Computing students and lecturers who want a current approach to web development
  • Anyone who learned an older ASP.NET Core version and wants to update to .NET 10

Prerequisites

  • Basic HTML and CSS, and an understanding of simple web pages
  • Basic C# or another object-oriented language; an OOP refresher is given if needed
  • Familiarity with databases and basic SQL
  • A laptop that can run the .NET 10 SDK, Docker Desktop and Visual Studio 2026 or VS Code, with permission to install software

Curriculum

Course Details

This course is the 2026 edition that replaces the previous ASP.NET Core MVC course, which was taught on .NET Core 2.0. It has been rewritten from scratch for .NET 10 (LTS). It runs for 3 days, 6 hours per day (18 hours in total, 09:00-16:00), as lectures with labs built on a single sample store application that grows throughout the course. Beginner to Intermediate level. It uses Program.cs with minimal hosting, view models, EF Core 10 with SQL Server 2025 on Docker, ASP.NET Core Identity and the built-in OpenAPI document. The Web Forms review has been dropped, and testing with xUnit and deployment with Docker have been added. Learners take home a lab guide, source code for every lab and deployment configuration files.

Day 1 .NET 10 Foundations and MVC Structure

Section 1: Lab: Getting Started with .NET 10 and ASP.NET Core MVC

  • What the MVC pattern is, compared with Razor Pages, Blazor and Web API
  • .NET 10 as an LTS release, its support cycle and what changed from older .NET Core
  • Install the .NET 10 SDK and Visual Studio 2026, or VS Code with C# Dev Kit
  • Create a project with dotnet new mvc and understand the folder structure
  • Lab: run the first app, use Hot Reload and edit the home page

Section 2: C# for Modern Web Applications

  • Classes, records and nullable reference types
  • LINQ, lambdas and pattern matching as used in web code
  • async and await for I/O such as databases and HTTP
  • Primary constructors, collection expressions and what is new in C# 14
  • Lab: write classes and methods for the app's sample data

Section 3: Program.cs, Middleware and Dependency Injection

  • The request pipeline and middleware order in Program.cs
  • Dependency injection: registering singleton, scoped and transient services
  • appsettings.json, environments, the options pattern and user secrets
  • Logging with ILogger and reading logs during development
  • Lab: create your own service and inject it into a controller

Section 4: Controllers, Actions and Routing

  • The role of a controller and writing async actions
  • Action results: View, Redirect, Json, File and NotFound
  • Conventional routing versus attribute routing, and route parameters
  • Model binding from the route, query string and form
  • Lab: build a product list page with search and paging

Section 5: Razor Views and Tag Helpers

  • Razor syntax, layouts, sections and partial views
  • Passing data with strongly typed view models instead of ViewBag
  • Common tag helpers, and view components for reusable parts
  • Serving static files with MapStaticAssets and using Bootstrap 5
  • Lab: design the layout and a product details page
Day 2 Forms, Data and Membership

Section 6: Lab: Forms and Validation

  • Build forms with tag helpers bound to a view model
  • Data annotations and showing validation messages
  • Client-side and server-side validation with ModelState
  • Preventing CSRF with anti-forgery tokens, and the Post-Redirect-Get pattern
  • Lab: create and edit product forms with full validation

Section 7: Entity Framework Core 10 with SQL Server

  • Run SQL Server 2025 Developer Edition with Docker
  • Create models and a DbContext with code-first
  • Store the connection string safely and register the DbContext
  • Create and update the database with migrations, and seed sample data
  • Lab: build the store database from the app's models

Section 8: Lab: CRUD and LINQ Queries

  • Scaffold CRUD controllers and views, then adapt them to the task
  • One-to-many and many-to-many relationships, and using Include
  • LeftJoin in EF Core 10, AsNoTracking and paging
  • ExecuteUpdate and ExecuteDelete for changing many rows at once
  • Lab: a complete product and category management system

Section 9: Structuring Code and Testing

  • Separate a service layer from controllers and pass data with DTOs
  • Error handling and error pages that depend on the environment
  • Unit tests for services with xUnit
  • Integration tests with WebApplicationFactory
  • Lab: write tests for the pricing logic and a controller page

Section 10: Lab: Membership with ASP.NET Core Identity

  • How authentication differs from authorisation
  • Add ASP.NET Core Identity and store users in SQL Server through EF Core
  • Registration, sign-in and cookie authentication
  • Authorisation with roles and policies, and an introduction to passkey support in .NET 10
  • Lab: restrict the product management pages to administrators
Day 3 Web APIs, Security and Deployment

Section 11: Lab: Building Web APIs with Controllers

  • REST concepts, HTTP methods and HTTP status codes
  • ApiController, DTOs and ProblemDetails for reporting errors
  • Generate the built-in OpenAPI document with AddOpenApi and MapOpenApi
  • Test APIs with .http files in the IDE or with Postman
  • Lab: a product API that shares the web app's database

Section 12: Minimal APIs and Calling APIs

  • Minimal APIs compared with controllers, and when to choose each
  • Route groups and Minimal API validation in .NET 10
  • Call APIs from MVC with IHttpClientFactory and typed clients
  • Protect APIs with basic JWT bearer authentication and configure CORS
  • Lab: a web page that pulls data from an external API

Section 13: Performance and Security

  • Output caching and HybridCache for frequently read data
  • Response compression and cutting the number of database queries
  • HTTPS, HSTS and the security headers you should have
  • Rate limiting middleware and health checks
  • A security checklist before going live

Section 14: Lab: Deploying on Ubuntu Linux and Docker

  • dotnet publish as framework-dependent and self-contained
  • Run the app with Kestrel and systemd on Ubuntu Server
  • Set up Nginx as a reverse proxy, with forwarded headers
  • Build a container image with dotnet publish or a Dockerfile
  • Lab: run the web app alongside SQL Server with Docker Compose

Section 15: Workshop: Building a Complete Web Application

  • Brief: a meeting room booking system or a business system of the learner's choice
  • Design models, screens and user permissions, then build them with MVC and EF Core
  • Add a Web API for other apps, and use an AI assistant to help write code with careful review
  • Deploy with Docker, present the work and plan the next steps

Schedule & training options

For individuals — public rounds

1–3December
Classroom1–3 Dec 26
20 seats left
9–11February
Classroom9–11 Feb 27
20 seats left
7–9April
Classroom7–9 Apr 27
20 seats left
22–24June
Classroom22–24 Jun 27
20 seats left
3–5August
Classroom3–5 Aug 27
20 seats left
5–7October
Classroom5–7 Oct 27
20 seats left
1–3December
Classroom1–3 Dec 27
20 seats left

For organisations — in-house / private

  • Tailor the content to your team’s tools and projects
  • Your dates, at your office or live online
  • Quotation with tax ID for procurement
Corporate training quote

Instructors

Frequently asked questions

What is the MVC pattern, and what does each part do?

MVC splits an application into three parts. The model holds data and business rules, the view presents output to the user, and the controller receives each request, decides which model to use and which view to return. This separation lets you change the interface without touching the logic, test each part on its own and let team members work in parallel. In ASP.NET Core MVC on .NET 10, views are written in Razor and receive their data through strongly typed view models.

How do you connect to SQL Server with Entity Framework Core?

Install the Microsoft.EntityFrameworkCore.SqlServer package that matches .NET 10 through NuGet, then create your model classes and a DbContext with a DbSet for each table. Keep the connection string in appsettings.json, or in user secrets during development, and register the DbContext in Program.cs. Create the tables with migrations, then inject the DbContext into a service or controller to query and save data with async LINQ.

What is a REST API, and how do you build one with ASP.NET Core?

REST is a style of API design that treats data as resources identified by URLs and uses HTTP methods to express intent: GET reads, POST creates, PUT updates and DELETE removes, with HTTP status codes such as 200, 201 or 404 in the response. In ASP.NET Core you can build one with controllers marked with the ApiController attribute or with Minimal APIs, return JSON, generate the built-in OpenAPI document with AddOpenApi, and test it with .http files or Postman.

Who is the ASP.NET Core MVC with .NET 10 course for, and what should I know beforehand?

It suits developers starting web development on .NET, Web Forms or .NET Framework developers moving to ASP.NET Core, IT staff, and students and lecturers. You should have a little HTML, CSS and C#, and know basic databases and SQL. If object-oriented programming is still new to you, the course covers the essentials first.

What will I be able to do after the ASP.NET Core MVC with .NET 10 course?

You will be able to build web applications with ASP.NET Core MVC on .NET 10 across controllers, Razor views and validated forms, manage SQL Server data with EF Core 10, add membership and authorisation with Identity, create Web APIs with OpenAPI documents and call them with HttpClient, and deploy to Ubuntu Linux with Nginx or Docker. Participants who complete the training receive a Certificate of Completion with its own number, which can be verified online.

Can the ASP.NET Core MVC with .NET 10 course be run in-house for our team?

Yes. It can be run in-house for your team, with examples adapted to your own work, such as the SQL Server databases or business systems your team already looks after, or a focus on moving applications from .NET Framework to .NET 10. You can request a quotation from this page, or contact us on LINE @itgenius or by phone on 02-570-8449.

Related articles

Articles are published in Thai.