From 4d82f418235844c3c4a53ce642eabe5d04b8ffe4 Mon Sep 17 00:00:00 2001 From: maliming Date: Sun, 7 Feb 2021 20:29:21 +0800 Subject: [PATCH] Remove AddAutofac method. Resolve #7627 --- .../ServiceCollectionExtensions.cs | 67 ------------------- 1 file changed, 67 deletions(-) delete mode 100644 framework/src/Volo.Abp.Autofac/Autofac/Extensions/DependencyInjection/ServiceCollectionExtensions.cs diff --git a/framework/src/Volo.Abp.Autofac/Autofac/Extensions/DependencyInjection/ServiceCollectionExtensions.cs b/framework/src/Volo.Abp.Autofac/Autofac/Extensions/DependencyInjection/ServiceCollectionExtensions.cs deleted file mode 100644 index 4b61ae5a6e..0000000000 --- a/framework/src/Volo.Abp.Autofac/Autofac/Extensions/DependencyInjection/ServiceCollectionExtensions.cs +++ /dev/null @@ -1,67 +0,0 @@ -// This software is part of the Autofac IoC container -// Copyright © 2017 Autofac Contributors -// http://autofac.org -// -// Permission is hereby granted, free of charge, to any person -// obtaining a copy of this software and associated documentation -// files (the "Software"), to deal in the Software without -// restriction, including without limitation the rights to use, -// copy, modify, merge, publish, distribute, sublicense, and/or sell -// copies of the Software, and to permit persons to whom the -// Software is furnished to do so, subject to the following -// conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -// OTHER DEALINGS IN THE SOFTWARE. - -using System; -using System.Collections.Generic; -using System.Linq; -using JetBrains.Annotations; -using Microsoft.Extensions.DependencyInjection; -using Volo.Abp; - -namespace Autofac.Extensions.DependencyInjection -{ - /// - /// Extension methods on to register the . - /// - public static class ServiceCollectionExtensions - { - /// - /// Adds the to the service collection. - /// - /// The service collection to add the factory to. - /// Action on a that adds component registrations to the container. - /// The service collection. - public static IServiceCollection AddAutofac(this IServiceCollection services, Action configurationAction = null) - { - return services - .ClearServiceProviderFactories() - .AddSingleton>(new AutofacServiceProviderFactory(configurationAction)); - } - - private static IServiceCollection ClearServiceProviderFactories([NotNull] this IServiceCollection services) - { - Check.NotNull(services, nameof(services)); - - services.RemoveAll( - service => service.ImplementationInstance? - .GetType() - .GetInterfaces() - .Any(i => i.IsGenericType && i.GetGenericTypeDefinition() == typeof(IServiceProviderFactory<>)) == true - ); - - return services; - } - } -}