我正在开发 Blazor wasm 应用程序,并在 App.razor 文件中添加 AuthorizeRouteView 组件时遇到异常。由于相关资源很少,我花了很多时间尝试解决,所以我想在这里分享解决方案:
错误消息是:
System.InvalidOperationException:尝试激活“Microsoft.AspNetCore.Authorization.DefaultAuthorizationPolicyProvider”时,无法解析“Microsoft.Extensions.Options.IOptions`1[Microsoft.AspNetCore.Authorization.AuthorizationOptions]”类型的服务。
包版本:
<PackageReference Include="Microsoft.AspNetCore.Blazor.Build" Version="3.2.0-preview1.20073.1" PrivateAssets="all" />
<PackageReference Include="Microsoft.AspNetCore.Blazor.DevServer" Version="3.2.0-preview1.20073.1" PrivateAssets="all" />
<PackageReference Include="Microsoft.AspNetCore.Blazor.HttpClient" Version="3.2.0-preview1.20073.1" />
<PackageReference Include="Microsoft.AspNetCore.Components.Authorization" Version="3.1.1" PrivateAssets="all"/>
Run Code Online (Sandbox Code Playgroud)
以下描述我只需要在 Program.cs 服务中添加 AddAuthorizationCore() :
builder.Services.AddAuthorizationCore();
Run Code Online (Sandbox Code Playgroud)
这然后产生上述异常......