Scoped Service

Scoped service is a service type in Blazor Server DI. Scoped services are better for:

  1. Business logic operations.
  2. State is required.
Download the example for a working example containing the code snippets in this guide.

Creating a scoped service

  1. Navigate to the Data folder and create the ScopedGuidProviderService.cs class:
using System;

namespace DependencyExampleBlazorSchool.Data
{
    public class ScopedGuidProviderService : IGuidProviderService
    {
        public Guid Id { get; set; } = Guid.NewGuid();
    }
}
  1. Navigate to Startup.cs and register the service as a scoped service.
public void ConfigureServices(IServiceCollection services)
{
    ...
    services.AddScoped<ScopedGuidProviderService>();
}
For injecting and using a service, please refer to Dependency Injection.

Lifetime

Scoped services are created for each user request. Used for maintaining state within a request.

In the example provided at the beginning of this context, you will see a scoped service being injected 2 times and their values are different for each request.

Scoped service in Blazor Server

Note: Use the "Trigger new request" in the example to create a new request.
BLAZOR SCHOOL
Designed and built with care by our dedicated team, with contributions from a supportive community. We strive to provide the best learning experience for our users.
Docs licensed CC-BY-SA-4.0
Copyright © 2021-2025 Blazor School
An unhandled error has occurred. Reload 🗙