Latest articles and tutorials
![Add a SignalR hub to ASP.NET Core & connect using JavaScript](/media/gjykfeag/tutorial-profile.png?width=350&height=197&v=1dad3d6c63253a0)
![Do you use IConfiguration, IOptions or IOptionsSnapshot?](/media/i0ipflea/tutorial-profile.png?width=350&height=197&v=1daca224aa66a90)
Do you use IConfiguration, IOptions or IOptionsSnapshot?
Is either IConfiguration, IOptions or IOptionsSnapshot the best way to inject configuration values from appsettings.json to an ASP.NET Core Web API?![How to use VS Code to develop and build a .NET application](/media/co1mxtr5/tutorial-profile.png?width=350&height=197&v=1dacfa36be46500)
How to use VS Code to develop and build a .NET application
How to develop a .NET application with VS Code, including how to install the .NET SDK, adding extensions and how to build and run an app.![How to find a client's geolocation in .NET with IP lookup](/media/foqblrnh/tutorial-profile.png?width=350&height=197&v=1dac3125f1acaf0)
How to find a client's geolocation in .NET with IP lookup
Add geolocation to your .NET project by doing an IP address lookup so you know the country where your client's are located.Try our C# online code editor
![Work out the number of days between two dates](/media/uzyksmqi/codingchallengedaystogo.png?width=350&height=197&v=1da1a4cba8891c0)
Work out the number of days between two dates
Write a C# function to work out the difference between two dates and return the number of days in this coding challenge.
Contains online code editor
![Removing the last character from a string](/media/av2lvfyl/codingchallengelastcharacter.png?width=350&height=197&v=1da14a72f0f3270)
Removing the last character from a string
This coding challenge involves writing a C# method that will removing the last character from a string and returning the value.
Contains online code editor
![Write a C# function to convert MPH to KPH](/media/l5sd2xf1/speed.png?width=350&height=197&v=1da05ef7e54f2f0)
Write a C# function to convert MPH to KPH
Take our coding challenge to write a C# function with the necessary parameters that converts miles-per-hour (MPH) to kilometres-per-hour (KPH) and vice-versa.
Contains online code editor
![Add an extension method to a C# class](/media/av3hn5uk/codingchallengeextensionmethods.png?width=350&height=197&v=1d9f38dc2398c70)
Add an extension method to a C# class
See if you can add a static extension method to a class and not modify the original type with our C# coding challengeGet started with EF Core - Free online course
Create a DbContext class in Entity Framework Core
Get started with EF Core as we set up an ASP.NET Core Web API project and create a DbContext and the SQL Server database it will connect to.Entity Framework Core migrations: Add a migration
Learn how to add a migration to a DbContext using code first and update a SQL Server database with this EF Core tutorial.Insert, update & delete a record in Entity Framework Core
This tutorial will add EF Core CRUD methods in ASP.NET Core Web API webpoints by inserting, updating and deleting from a DbContext.Select rows using queries in Entity Framework Core
Learn how to create a EF Core query with LINQ that will select a single row and multiple rows of data with the option to add pagination..NET 8 and C# 12 tutorials
![How to download and install the .NET 8 and C# 12 release](/media/01hfhivd/cover.png?width=350&height=197&v=1da11af64bfeea0)
How to download and install the .NET 8 and C# 12 release
.NET 8 and C# 12 have been released and we'll show you how to update Visual Studio and download the .NET 8 SDK.![Exception handling has its own middleware in .NET 8](/media/euod0pj4/article-cover.png?width=350&height=197&v=1da38dcdee103a0)
Exception handling has its own middleware in .NET 8
Exception handling in C# has improved dramatically with the launch of it's own IExceptionHandler middleware in .NET 8 .![Validating appsettings becomes much faster with .NET 8](/media/yvglqzvo/cover.png?width=350&height=197&v=1da2e7dff12e8f0)
Validating appsettings becomes much faster with .NET 8
.NET 8 allows for a faster way to validate the option values in appsettings.json in an ASP.NET Core Web API using data annotations.![Hosted service has a major update to its lifecycle events](/media/er3e0jfe/cover.png?width=350&height=197&v=1da24417a23ed60)
Hosted service has a major update to its lifecycle events
The worker service project sees a major update in .NET 8 with the new IHostedLifecycle interface hooking into new background hosted service lifecycles..NET 8 and C# 12 videos
How to update to .NET 8: The fastest .NET to date
.NET 8 and C# 12 has launched and we'll show you how to update Visual Studio to 17.8 so you can start using .NET 8 in your projects today!No more custom middleware for exception handling in .NET 8
There is a new way to handle exception handling in C# meaning you no longer have to write custom middleware to override the HTTP response body..NET 8 makes it much faster to validate appsettings
There is a much faster way to validate appsettings.json configuration options values in .NET 8 with an ASP.NET Core Web API.Hosted service has a major update to its lifecycle events
The worker service project has a major update in .NET 8 that adds new lifecycle events before and after a service has started and stopped.Download .NET code examples
![SignalR hub example sending chat messages in ASP.NET Core](/media/gjykfeag/tutorial-profile.png?width=350&height=197&v=1dad3d6c63253a0)
SignalR hub example sending chat messages in ASP.NET Core
Download a .NET SignalR example which adds a hub that sends messages to clients when one is connected and when a method is invoked.![Geolocation & IP lookup example to find client's location](/media/foqblrnh/tutorial-profile.png?width=350&height=197&v=1dac3125f1acaf0)
Geolocation & IP lookup example to find client's location
A Geolocation code example in ASP.NET Core which uses IP lookup to find the client's location so you know which country they are located.![Stripe .NET checkout example to add online payments](/media/jztktncq/tutorial-profile.png?width=350&height=197&v=1dabb684178a730)
Stripe .NET checkout example to add online payments
Download an ASP.NET Core Stripe checkout example that uses the Stripe.net NuGet package to take online payments through a Web API endpoint.![TimeProvider example for mocking time and timer in xUnit](/media/5dkc1fmr/cover.png?width=350&height=197&v=1da250e9bac2150)
TimeProvider example for mocking time and timer in xUnit
A .NET 8 xUnit project which uses the TimeProvider and FakeTimeProvider class to mock time and a timer in unit tests.Learn .NET with our online courses
![ASP.NET Core in .NET 6: Dependency Injection](/media/z13ox31t/aspnet-core-dotnet-6-dependency-injection.jpeg?width=350&height=197&v=1d9c64a84892400)
ASP.NET Core in .NET 6: Dependency Injection
Looking at dependency injection with C# examples for beginners. The course looks at what dependency injection is, the different service lifetimes, and some of the common errors.![Blazor WebAssembly: Building your first app](/media/zdub2vbl/blazor-webassembly-build-your-first-app.jpeg?width=350&height=197&v=1d9c64aa1f9ea10)
Blazor WebAssembly: Building your first app
Looking at how Blazor WebAssembly works and some of its benefits. Looking how it compares to Blazor Server and how Razor components work.![Blazor WebAssembly: Foundation skills](/media/i1fl1now/blazor-webassembly-foundation-skills.jpeg?width=350&height=197&v=1d9c64ac03ddea0)
Blazor WebAssembly: Foundation skills
Focusing how to use configuration, authentication, API integration with HttpClient, logging, deployment in a Blazor WebAssembly app.![Advanced Blazor WebAssembly](/media/tb5djwyu/advanced-blazor-webassembly.jpeg?width=350&height=197&v=1d9c64adbcc7730)