<PackageReference Include="Castle.Windsor" Version="4.1.0" />

ComponentDependencyRegistrationExtensions

using Castle.Core; using System; using System.Collections; using System.ComponentModel; namespace Castle.MicroKernel.Registration { [EditorBrowsable(EditorBrowsableState.Never)] public static class ComponentDependencyRegistrationExtensions { public static IDictionary Insert(this IDictionary arguments, string key, object value) { arguments[key] = value; return arguments; } public static IDictionary Insert(this IDictionary arguments, Type dependencyType, object value) { arguments[dependencyType] = value; return arguments; } public static IDictionary InsertAnonymous(this IDictionary arguments, object namedArgumentsAsAnonymousType) { foreach (DictionaryEntry item in new ReflectionBasedDictionaryAdapter(namedArgumentsAsAnonymousType)) { arguments[item.Key] = item.Value; } return arguments; } public static IDictionary InsertTyped<TDependencyType>(this IDictionary arguments, TDependencyType value) { arguments[typeof(TDependencyType)] = value; return arguments; } public static IDictionary InsertTypedCollection(this IDictionary arguments, object[] typedArgumentsArray) { foreach (object obj in typedArgumentsArray) { arguments[obj.GetType()] = obj; } return arguments; } } }