Unify ConfigureServices to take IServiceCollection with Options

This commit is contained in:
Hao Kung 2014-11-04 12:32:24 -08:00
parent 7277dc910a
commit 7f1024aac0
2 changed files with 5 additions and 7 deletions

View File

@ -151,17 +151,17 @@ namespace Microsoft.AspNet.Hosting.Startup
{
if (servicesMethod != null)
{
var services = new ServiceCollection();
services.Add(OptionsServices.GetDefaultServices());
if (servicesMethod.ReturnType == typeof(IServiceProvider))
{
// IServiceProvider ConfigureServices()
builder.ApplicationServices = (Invoke(servicesMethod, instance, builder) as IServiceProvider)
// IServiceProvider ConfigureServices(IServiceCollection)
builder.ApplicationServices = (Invoke(servicesMethod, instance, builder, services) as IServiceProvider)
?? builder.ApplicationServices;
}
else
{
// void ConfigureServices(IServiceCollection)
var services = new ServiceCollection();
services.Add(OptionsServices.GetDefaultServices());
Invoke(servicesMethod, instance, builder, services);
if (builder != null)
{

View File

@ -69,10 +69,8 @@ namespace Microsoft.AspNet.Hosting.Fakes
return null;
}
public IServiceProvider ConfigureProviderServices()
public IServiceProvider ConfigureProviderServices(IServiceCollection services)
{
var services = new ServiceCollection();
services.Add(OptionsServices.GetDefaultServices());
services.Configure<FakeOptions>(o =>
{
o.Configured = true;