Adding type constraint on IdentityBuilder.AddService

This commit is contained in:
Pranav K 2014-10-21 18:08:24 -07:00
parent a091c191bb
commit 9bd1e8f0a9
2 changed files with 8 additions and 7 deletions

View File

@ -16,6 +16,13 @@ namespace Microsoft.AspNet.Identity
Services = services; Services = services;
} }
public IdentityBuilder<TUser, TRole> AddInstance<TService>(TService instance)
where TService : class
{
Services.AddInstance(instance);
return this;
}
public IdentityBuilder<TUser, TRole> AddUserStore(IUserStore<TUser> store) public IdentityBuilder<TUser, TRole> AddUserStore(IUserStore<TUser> store)
{ {
return AddInstance(store); return AddInstance(store);
@ -58,12 +65,5 @@ namespace Microsoft.AspNet.Identity
Services.AddScoped<TManager>(); Services.AddScoped<TManager>();
return this; return this;
} }
private IdentityBuilder<TUser, TRole> AddInstance<TService>(TService instance)
where TService : class
{
Services.AddInstance(instance);
return this;
}
} }
} }

View File

@ -52,6 +52,7 @@ namespace Microsoft.AspNet.Identity.Test
} }
private static void CanOverride<TService>(TService instance) private static void CanOverride<TService>(TService instance)
where TService : class
{ {
var services = new ServiceCollection(); var services = new ServiceCollection();
services.AddIdentity<IdentityUser>().AddInstance(instance); services.AddIdentity<IdentityUser>().AddInstance(instance);