出现此问题的解决方法是使用另一个版本的 Microsoft.AspNetCore.Authentication.MicrosoftAccount 包。 如果您正在使用 ASP.NET Core 7.0,则需要更改该包的版本以解决此问题。 可以使用以下命令更改包版本:
dotnet add package Microsoft.AspNetCore.Authentication.MicrosoftAccount --version 3.1.3
之后,需要在 Startup.cs 文件中使用具有正确配置的身份验证服务配置该包,例如:
services.AddAuthentication()
.AddMicrosoftAccount(microsoftOptions =>
{
microsoftOptions.ClientId = Configuration["Authentication:Microsoft:ClientId"];
microsoftOptions.ClientSecret = Configuration["Authentication:Microsoft:ClientSecret"];
})
此解决方案的核心是在调用 Microsoft 身份验证定位和使用包时将包版本更改为适用于 ASP.NET Core 7.0 的版本,并针对身份验证服务进行正确的配置。