8

私が使うとき

@attribute [Authorize]

blazor クライアント アプリのカミソリ ページで、このエラーが表示されます

System.InvalidOperationException: タイプ 'Microsoft.AspNetCore.Components.PageDisplay+AuthorizeViewWithSuppliedData' のプロパティ 'AuthorizationPolicyProvider' の値を指定できません。タイプ 'Microsoft.AspNetCore.Authorization.IAuthorizationPolicyProvider' の登録済みサービスはありません

認証を設定AuthenticationStateProviderし、クライアント側のカスタムを次のように使用します

 public class Startup
    {
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddScoped<AuthenticationStateProvider, ApiAuthenticationStateProvider>();
            services.AddSingleton<AuthService, AuthService>();
            services.AddBlazoredLocalStorage();

        }

        public void Configure(IComponentsApplicationBuilder app)
        {
            app.AddComponent<App>("app");
        }
    }

この問題に関するヘルプ

4

2 に答える 2

11

追加する必要がありましたservices.AddAuthorizationCore();

KodiakMxに感謝

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddBlazoredLocalStorage();
        services.AddAuthorizationCore();
        services.AddScoped<AuthenticationStateProvider, ApiAuthenticationStateProvider>();
    }
于 2019-09-03T19:03:44.600 に答える