如何配置Thinktecture IdentityServer以使用Unity IOC容器

时间:2015-01-26 16:44:06

标签: unity-container server identity thinktecture

目前,我的网络应用程序使用统一IoC。我正在尝试使用Unity来注册Identityserver为我的自定义用户服务所需的所有依赖项。 我也在同一个Web应用程序中托管身份服务器。

1 个答案:

答案 0 :(得分:1)

我能够使用ServiceLocator

在Startup.cs

app.Map("/identity", idsrvApp =>
{
  var factory = InMemoryFactory.Create(
            clients: Clients.Get(),
            scopes: StandardScopes.All);


 factory.UserService = new Registration<IUserService>(resolver => Microsoft.Practices.ServiceLocation.ServiceLocator.Current.GetInstance<IUserService>());

在我的Unity配置中

container.RegisterType<IUserService, LocalRegistrationUserService>();

并在我的自定义用户服务中

public class LocalRegistrationUserService : IUserService
{

    IUser userBusiness;

    public LocalRegistrationUserService(IUser userBusiness)
    {
        this.userBusiness = userBusiness;
    }