/// <summary> /// Creates bindings using conventions /// </summary> /// <param name="kernel">The kernel for which the bindings are created.</param> /// <param name="configure">The binding convention configuration.</param> public static void Bind(this IBindingRoot kernel, Action<IFromSyntax> configure) { if (configure == null) { throw new ArgumentNullException("configure"); } #if !NO_ASSEMBLY_SCANNING var assemblyNameRetriever = new AssemblyNameRetriever(); try { var builder = new ConventionSyntax( new ConventionBindingBuilder(kernel, new TypeSelector()), new AssemblyFinder(assemblyNameRetriever), new TypeFilter(), new BindingGeneratorFactory(new BindableTypeSelector())); configure(builder); } finally { assemblyNameRetriever.Dispose(); } #else var builder = new ConventionSyntax( new ConventionBindingBuilder(kernel, new TypeSelector()), new TypeFilter(), new BindingGeneratorFactory(new BindableTypeSelector())); configure(builder); #endif }
public AssemblyNameRetrieverContext() { this.AssemblyNameRetriever = new AssemblyNameRetriever(); }