public static DependencyScanner GetDependencyScanner(DependencyScanTarget dependencyScanTarget, Assembly assembly, string currentNamespace) { switch (dependencyScanTarget) { case DependencyScanTarget.CurrentNamespace: return(new NamespaceScanner(assembly, currentNamespace)); case DependencyScanTarget.CurrentNamespaceRecursive: return(new NamespaceRecursiveScanner(assembly, currentNamespace)); case DependencyScanTarget.Assembly: return(new AssemblyScanner(assembly)); default: return(null); } }
protected DIContext(Type callingType, DependencyScanTarget scanTarget) : this(callingType) { this._scanTarget = scanTarget; }
public AttributeBasedDIContext(Type callingType, DependencyScanTarget scanTarget) : base(callingType, scanTarget) { this.Scanner = DependencyScanner.GetDependencyScanner(this._scanTarget, this._callingAssembly, this._currentNamespace); this.Registrar = DependencyRegistrar.BuildRegistrarChain(this._container); }