Quantcast
Channel: Active questions tagged blazor - Stack Overflow
Viewing all articles
Browse latest Browse all 4839

There is no registered service of type

$
0
0

I am trying to make a new version of AuthenticationStateProvider so that I can use the data already in my db. I called it ServerAuthenticationStateProvider:

using Microsoft.AspNetCore.Components;using System;using System.Collections;using System.Collections.Generic;using System.Linq;using System.Security.Claims;using System.Threading.Tasks;namespace BadgerWatchWeb.Services{    public class ServerAuthenticationStateProvider :    AuthenticationStateProvider{    string UserId;    string Password;    bool IsAuthenticated = false;    public void LoadUser(string _UserId, string _Password)    {        UserId = _UserId;        Password = _Password;    }    public async Task LoadUserData()    {        var securityService = new SharedServiceLogic.Security();        try        {            var passwordCheck = await securityService.ValidatePassword(UserId, Password);            IsAuthenticated = passwordCheck == true ? true : false;        } catch(Exception ex)        {            Console.WriteLine(ex);        }    }    public override async Task<AuthenticationState> GetAuthenticationStateAsync()    {        var userService = new UserService();        var identity = IsAuthenticated            ? new ClaimsIdentity(await userService.GetClaims(UserId))            : new ClaimsIdentity();        var result = new AuthenticationState(new ClaimsPrincipal(identity));        return result;    }}

}

My configure services looks like:

        public void ConfigureServices(IServiceCollection services)    {        services.AddRazorPages();        services.AddServerSideBlazor();        services.AddSingleton<UserService>();        services.AddScoped<AuthenticationStateProvider, ServerAuthenticationStateProvider>();        services.AddAuthorizationCore();    }

I then inject @inject ServerAuthenticationStateProvider AuthenticationStateProvider into my razor view file.

When I run the code I get InvalidOperationException: Cannot provide a value for property 'AuthenticationStateProvider' on type 'BadgerWatchWeb.Pages.Index'. There is no registered service of type 'BadgerWatchWeb.Services.ServerAuthenticationStateProvider'.


Viewing all articles
Browse latest Browse all 4839

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>