Note
This repository is WIP. I am updating all the previous samples from .NET 6/7 to .NET 8. Check the previous stable branch (6.0) if you want to browse the existing stable samples that contains also .NET 7/8 samples.
Greetings from Cairo, Egypt. You can sponsor this project here.
You can find samples on new features availabel in ASP.NET Core 9(3) here.
6.0, 5.0, 3.1 LTS, 2.1 LTS
| Section | ||
|---|---|---|
| Authentication | 5 | |
| Blazor Client Side (Web Assembly) | 22 | .NET8 (WIP), Components, Data Binding |
| Blazor Server | 16 | Localization |
| Blazor Server Side Render | 22 | |
| Caching | 5 | |
| Configurations | 10 | |
| CoreWCF | 1 | |
| Dependency Injection | 4 | |
| Diagnostics | 5 | |
| Endpoint Routing | 32 | |
| 2 | ||
| Elsa Workflow | 14 | .NET8 |
| Exception Handler Middleware | 2 | |
| Features | 11 | |
| Generic Hosting | 9 | |
| gRPC (including grpc-Web) | 12 | |
| Health Check | 6 | |
| HTMX | 40 | |
| IHttpClientFactory | 4 | |
| IHostedService | 2 | |
| Logging | 5 | |
| Localization and Globalization | 6 | |
| Middleware | 14 | |
| Mini Apps | 2 | |
| Minimal API | 36 | Routing, Parameter Bindings, etc |
| Minimal Hosting | 23 | |
| MVC | 47 | Localization, Routing, Razor Class Library, Tag Helpers, View Component, etc |
| Output Cache Middleware | ||
| Open Telemetry | 3 | |
| Orchard Core | 4 | |
| Path String (HttpContext.Request.Path) | 1 | |
| Polly | 1 | |
| Problem Details Middleware | 3 | |
| Razor Pages | 10 | TempData |
| RazorSlices | 1 | |
| Request | 15 | Form, Cookies, Query String, Headers |
| Request Timeouts Middleware | 6 | |
| Response | 3 | |
| SignalR | 1 | |
| Security | 7 | |
| Single File Application | 2 | |
| Static Files and File Provider | 10 | |
| System.Text.Json | 23 | |
| Syndications | 3 | |
| Testing | 1 | |
| Unpoly | 5 | |
| URL Redirect/Rewrite | 6 | |
| Uri Helper | 5 | |
| Windows Service | 1 | |
| Web Sockets | 6 | |
| Web Utilities | 3 | |
| Orleans | 5 | .NET.8 |
| Xml | 1 | |
| YARP | 1 |
For Data Access samples, go to the excellent ORM Cookbook. .NET team also has a sample repository.
To run these samples, simply open your command line console, go to each folder and execute dotnet watch run.
Application Environment
This sample shows how to obtain application environment information (target framework, etc).
Show Connection info
Enumerate the connection information of a HTTP request.
Password Hasher server
Give it a string and it will generate a secure hash for you, e.g. localhost:5000?password=mypassword.
Version info
Show various version info of the framework your system is running on.
IApplicationLifetime
Responds to application startup and shutdown.
We are using IApplicationLifetime that trigger events during application startup and shutdown.
Short Circuit
Use MapShortCircuit or .ShortCircuit() to efficiently respond to a request without going through a middleware pipeline run.
Forever Server
This server will send a 'hello world' greeting forever.
Markdown server
Serve markdown file as html file. You will see how you can create useful app using a few basic facilities in aspnetcore.
We take "Markdig" as dependency.
Markdown server - implemented as middleware component
Serve markdown file as html file. It has the same exact functionality as Markdown server but implemented using middleware component.
We take "Markdig" as dependency.
Status Codes
Here we contrast between the usage of Microsoft.AspNetCore.Http.StatusCodes and System.Net.HttpStatusCode.
MediaTypeNames
This class provides convenient constants for some common MIME types. It's not extensive by any means however MediaTypeNames.Text.Html and MediaTypeNames.Application.Json come handy.
MediaTypeNames - 2
Using FileExtensionContentTypeProvider to obtain the correct MIME type of a filename extension.
The samples in this section rely on Wangkanai.Detection library.
Device Detection
This is the most basic device detection. You will be able to detect whether the client is a desktop or a mobile client.
All these samples require SixLabors.ImageSharp.Web middleware package. This middleware is an excelent tool to process your day to day image processing need.
Image-Sharp
This example shows how to enable image resizing functionality to your site. It's super easy and the middleware takes care of caching, etc.