好的,这开始让我感到紧张。我希望我从未开始使用Autofac,它使用起来太难了。
我创建了一个模块,我已按以下方式进行设置:
我认为这是做事的正确方法。理论上它应该有效。 现在,出现了“并发症”。
然后我设置了 OAuthProvider,UserManager和RefreshTokenService 。我上面的规则会将后者2设置为 InstancePerRequest ,但 Startup.cs 需要RefreshTokenService和OAuthProvider(其中注入了UserManager):
var config = new HttpConfiguration();
var scope = config.DependencyResolver.GetRootLifetimeScope();
// Get our providers
var authProvider = scope.Resolve<OAuthProvider>();
var refreshTokenProvider = scope.Resolve<IAuthenticationTokenProvider>();
// Create our OAuth options
return new OAuthAuthorizationServerOptions()
{
AllowInsecureHttp = true, // TODO: Remove this line
TokenEndpointPath = new PathString("/oauth/access_token"),
AccessTokenExpireTimeSpan = TimeSpan.FromDays(1),
AccessTokenFormat = new Business.Authentication.JwtFormat("http://localhost:62668"),
Provider = authProvider,
RefreshTokenProvider = refreshTokenProvider
};
我确实将所有三个设置为 InstancePerLifetimeScope ,但由于 UserManager 而导致问题。 所以我然后将它们设置为 InstancePerDependency 并编译了所有内容,但我发现没有任何东西在保存......
在我的经理告诉我删除Autofac之前,我真的需要弄清楚如何做到这一点。那么,那里的任何人都可以告诉我如何注册3个有问题的服务吗?