在Identity Server 4中为OpenID Connect注册IIdentityServerInteractionService

iKn*_*ing 6 c# openid-connect asp.net-core identityserver4

我正在尝试按照本教程使用从Identity Server 4文档添加OpenID Connect的用户身份验证,但是当我启动mvc客户端时出现以下错误:

InvalidOperationException:尝试激活"IdentityServer4.Quickstart.UI.HomeController"时,无法解析类型"IdentityServer4.Services.IIdentityServerInteractionService"的服务.

如何注册身份服务器交互服务?它听起来像DI的问题.

use*_*336 13

IIdentityServerInteractionService依赖项注入容器中没有可用的接口实现时,会出现此错误.Quickstart示例的HomeController请求IIdentityServerInteractionService构造函数中的实现:

public HomeController(IIdentityServerInteractionService interaction)
{
    _interaction = interaction;
}
Run Code Online (Sandbox Code Playgroud)

您应该services.AddIdentityServer();ConfigureServices启动类中添加方法.IdentityServer将注入一个IIdentityServerInteractionService命名实现DefaultIdentityServerInteractionService.