【发布时间】:2022-02-18 12:10:05
【问题描述】:
我必须将我的 Web 应用程序配置为使用 ServiceStack 内置的 ApiKeyAuthProvider。我已经在容器中注册了带有 IAuthRepository 接口的 OrmLiteAuthRepository,但是它抛出了一个异常,说我没有注册 IUserAuthRepository。 有人可以解释我的区别吗? 提前致谢
编辑: 对不起,我弄糊涂了 错误是
System.NotSupportedException: 'ApiKeyAuthProvider requires a registered IAuthRepository'
我们AppHost的Configure方法是
public override void Configure(Container container)
{
var dbFactory = new OrmLiteConnectionFactory("connString", SqlServerDialect.Provider);
container.Register<IDbConnectionFactory>(dbFactory);
container.Register<IUserAuthRepository>(_ => new OrmLiteAuthRepository(dbFactory));
container.Resolve<IUserAuthRepository>().InitSchema();
var authProvider = new ApiKeyAuthProvider()
{
RequireSecureConnection = false
};
Plugins.Add(new AuthFeature(
() => new AuthUserSession(),
new IAuthProvider[] {
authProvider
}
));
}
你能解释一下这两个接口之间的区别吗?我们无法弄清楚(ServiceStack v.6.0.2)
【问题讨论】:
-
这听起来不对,请提供您的注册码和完整的 Exception StackTrace 以及您正在使用的 ServiceStack 版本。
-
@mythz 应要求,再次感谢
标签: asp.net-core asp.net-core-mvc servicestack