Web Development · WDC-96

Web API with ASP.NET Core

Web API with ASP.NET Core is a course in building REST APIs with ASP.NET Core 10, from REST principles and database access through EF Core to validation, OpenAPI documentation, JWT security and testing before release. It suits C# and backend developers who need to expose data to web front ends, mobile apps or other systems in a clean, secure way.

Updated
From 6,750 THB / person 7,500 −10% excl. VAT 7% · group rates available
PDFDownload the course outline
  • Duration12 hours · 2 days
  • FormatOnsite / live online
  • Next roundOn request
  • CertificateIncluded

Course overview

Web APIs sit at the heart of modern systems, serving single-page web apps, mobile apps, back-office services and integrations between organisations. A well-designed API speaks plain REST, validates data before saving it, reports errors in one consistent format, ships with documentation other teams can use straight away, and is secure enough to open to outside systems. ASP.NET Core on .NET 10 now has all of these tools built in.

This course takes learners through building web APIs with ASP.NET Core 10, starting with REST, HTTP methods and status codes, creating a controller-based project and connecting SQL Server through EF Core 10. Learners then build endpoints that retrieve, search, filter, page, add, update and delete data, with validation and ProblemDetails. The course goes on to built-in OpenAPI documentation, Minimal APIs, JWT authentication, versioning, rate limiting, caching and integration testing, and closes with a workshop that builds a complete API and runs it in Docker. (2 days, 6 hours per day, 12 hours in total, Intermediate level.)

What you’ll gain

  • Explain the structure and patterns of REST, HTTP methods and status codes correctly
  • Create an ASP.NET Core 10 Web API project with controllers, routing and model binding
  • Connect SQL Server with EF Core 10 and build APIs for CRUD, searching and paging
  • Validate input and report errors in a standard format with ProblemDetails
  • Generate built-in OpenAPI documentation and write Minimal APIs
  • Protect APIs with JWT bearer authentication, authorisation policies, CORS and rate limiting
  • Write integration tests and run the API in Docker

Who this course is for

  • C# developers who need to build web APIs for websites, mobile apps or other systems
  • Developers on older ASP.NET versions who want to move to ASP.NET Core 10
  • Backend developers who must expose system data to other departments or partners
  • Frontend and mobile developers who want to understand and build .NET APIs themselves
  • Anyone who wants a structured understanding of how REST works

Prerequisites

  • C# programming, such as classes, methods, lists and basic async/await
  • A basic understanding of how the web and HTTP work
  • Basic SQL such as SELECT, INSERT, UPDATE and DELETE
  • A laptop that can run the .NET 10 SDK and Docker Desktop, with permission to install software

Curriculum

Course Details

This course is the 2026 edition of Web API with ASP.NET Core, rewritten from scratch and updated for .NET 10 and ASP.NET Core 10. It runs for 2 days, 6 hours per day (12 hours in total, 09:00-16:00), as lectures with labs built on a single product and order API throughout. Intermediate level. It focuses on building web APIs, unlike the ASP.NET Core MVC course, which centres on web apps with user interfaces. All examples use C#. Every tool is free and every lab runs on the learner's own machine with Docker. Learners take home a lab guide, source code for every lab and docker-compose files for SQL Server 2025.

Day 1 REST and Building a Web API on a Database

Section 1: REST Fundamentals

  • What REST is, thinking in resources and designing meaningful URLs
  • HTTP methods: GET, POST, PUT, PATCH and DELETE, and idempotency
  • Common status codes in REST APIs and when to use each one
  • JSON, headers, content negotiation and statelessness
  • Lab: analyse and design the endpoints of a product and order system

Section 2: Lab: An ASP.NET Core 10 Web API Project and Routing

  • .NET 10 LTS and creating a controller-based project with dotnet new webapi
  • Program.cs, the middleware pipeline, dependency injection and user secrets
  • The ApiController attribute, attribute routing and route constraints
  • Binding from the route, query string, headers and body, and returning ActionResult<T>
  • Lab: run your first API and test it with an .http file in the IDE

Section 3: Lab: Connecting a Database with EF Core 10

  • Run SQL Server 2025 Developer Edition with Docker
  • Create code-first entities and a DbContext with relationships
  • Register the DbContext and keep the connection string safe
  • Create the database with migrations and seed sample data
  • Separate entities from DTOs so the database schema does not leak out of the API

Section 4: Lab: Retrieving, Searching and Paging Data

  • List and single-item endpoints, returning 404 when nothing is found
  • Filtering, searching and sorting from the query string
  • Offset paging that also returns the total count
  • Projection with Select, AsNoTracking and async all the way down
  • Configuring JSON with System.Text.Json, such as field naming and enums

Section 5: Lab: Creating, Updating, Deleting and Validation

  • POST returning 201 Created, PUT, PATCH with JSON Patch and DELETE returning 204
  • Validation with data annotations and automatic 400 responses from ApiController
  • Business rules in a service layer and returning Conflict for duplicates
  • Standard error responses with ProblemDetails and a central exception handler
  • ExecuteUpdate and ExecuteDelete for changing many rows at once
Day 2 Documentation, Security and Production Readiness

Section 6: Lab: OpenAPI Documentation and Minimal APIs

  • Generate a built-in OpenAPI document with AddOpenApi and MapOpenApi
  • Describe endpoints with XML comments and try them in Swagger UI or Scalar
  • Minimal APIs compared with controllers, and when to choose each
  • MapGroup, TypedResults and built-in Minimal API validation, new in .NET 10
  • Lab: rewrite the product category API as a documented Minimal API

Section 7: Lab: Protecting the API with Authentication and Authorisation

  • How authentication differs from authorisation
  • JWT bearer authentication and token validation
  • ASP.NET Core Identity and the Identity API endpoints for issuing tokens
  • Roles, claims and authorisation policies
  • Configuring CORS so web apps on other domains can call the API safely

Section 8: Versioning, Rate Limiting and Caching

  • API versioning with the Asp.Versioning packages
  • Rate limiting middleware to stop clients calling too often
  • Output caching and HybridCache for frequently read data
  • Health checks and logging with ILogger
  • A security checklist before opening an API to the outside world

Section 9: Lab: Testing and Consuming the API

  • Unit tests for the service layer with xUnit
  • Integration tests with WebApplicationFactory and a test database
  • Calling the API from .NET apps with IHttpClientFactory and typed clients
  • Handling timeouts and retries when calling external services

Section 10: Workshop: Building and Deploying a Complete API

  • Brief: a meeting room booking API or a business system of the learner's choice
  • Design the resources, DTOs, validation and access rules
  • Use an AI assistant to help write code, and review the result before using it
  • Build a container image with dotnet publish and run it with SQL Server in Docker Compose
  • Present the work and wrap up with next steps

Schedule & training options

For individuals — public rounds

No public rounds are open right now. Join the waiting list and we will contact you first when the next round opens, or ask us on LINE. Or call 02-570-8449 or 088-807-9770

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 a REST API and how is each HTTP method used?

REST is a way of designing APIs that treats data as resources, each with its own URL, such as /api/products and /api/products/5. HTTP methods state the action: GET reads, POST creates, PUT replaces, PATCH partly updates and DELETE removes. The server replies with meaningful status codes such as 200 OK, 201 Created, 400 Bad Request and 404 Not Found, usually sends JSON and keeps no client state between requests.

How do you get started building a web API with ASP.NET Core 10?

Install the .NET 10 SDK and create a project with dotnet new webapi, or choose the ASP.NET Core Web API template in Visual Studio. The generated Program.cs registers services and exposes an OpenAPI document with AddOpenApi and MapOpenApi. Then add a model and a controller marked with ApiController, or write Minimal API endpoints with MapGet and MapPost. Run it with dotnet run and test with an .http file or Postman. When you need real storage, connect a database through EF Core 10.

How do you validate incoming data in an ASP.NET Core Web API?

Add data annotations to the model, such as Required, StringLength, Range and EmailAddress. When the controller has the ApiController attribute, the model is validated automatically and invalid data gets a 400 Bad Request in ProblemDetails format listing the faulty fields. Minimal APIs in .NET 10 can turn on built-in validation too. For more complex rules, such as checking whether a product code already exists, validate in the service layer and return BadRequest or Conflict as appropriate.

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

It suits C# and backend developers who need to build web APIs for websites, mobile apps or other systems, and developers on older ASP.NET versions moving to ASP.NET Core 10. You should be able to program in C#, understand the basics of HTTP and write basic SQL.

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

You will be able to design APIs along REST lines and build ASP.NET Core 10 web APIs on SQL Server through EF Core 10 that retrieve, search, page, add, update and delete data, with validation, ProblemDetails, OpenAPI documentation and JWT protection, then test them and run them in Docker. Participants who complete the training receive a Certificate of Completion with its own number, which can be verified online.

Can the Web API with ASP.NET Core 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 designing APIs around the data or systems your team needs to expose to others. 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.