public void Configure(IExportRegistrationBlock registrationBlock) { var assembly = System.Reflection.Assembly.Load("BusinessSolutions.Common.Infra"); registrationBlock.ExportAssembly(assembly) .ByInterfaces(); assembly = System.Reflection.Assembly.Load("CommonSettings.DAL"); registrationBlock.ExportAssembly(assembly) .ExportAttributedTypes(); assembly = System.Reflection.Assembly.Load("CommonSettings.BLL"); registrationBlock.ExportAssembly(assembly) .ExportAttributedTypes(); assembly = System.Reflection.Assembly.Load("Sanabel.Security.Infra"); registrationBlock.ExportAssembly(assembly).ByInterfaces(c => c.Name.EndsWith("Repository") || c.Name.EndsWith("UnitOfWork")); assembly = System.Reflection.Assembly.Load("Security.AspIdentity"); registrationBlock.ExportAssembly(assembly) .ByInterfaces(); assembly = System.Reflection.Assembly.Load("Sanabel.Security.Application"); registrationBlock.ExportAssembly(assembly) .ByInterfaces(); assembly = System.Reflection.Assembly.Load("Sanable.Cases.Infra"); registrationBlock.ExportAssembly(assembly) .ByInterfaces(); assembly = System.Reflection.Assembly.Load("Sanabel.Cases.App"); registrationBlock.ExportAssembly(assembly) .ByInterfaces(); assembly = System.Reflection.Assembly.Load("Sanabel.Volunteers.Infra"); registrationBlock.ExportAssembly(assembly) .ByInterfaces(); assembly = System.Reflection.Assembly.Load("Sanabel.Volunteers.Application"); registrationBlock.ExportAssembly(assembly) .ByInterfaces(); registrationBlock.ExportFactory <IAuthenticationManager>(() => HttpContext.Current.GetOwinContext().Authentication); var logger = NLog.LogManager.CreateNullLogger(); registrationBlock.ExportInstance(logger).As <NLog.ILogger>() .Lifestyle.Singleton(); registrationBlock.ExportAs <AppLogger, ILogger>(); registrationBlock.ExportAssemblyContaining <CompositionRoot>() .BasedOn <Controller>(); registrationBlock.ExportAssemblyContaining <CompositionRoot>() .BasedOn <ApiController>(); }
public void Configure(IExportRegistrationBlock registrationBlock) { var assembly = System.Reflection.Assembly.Load("CommonSettings.DAL"); registrationBlock.ExportAssembly(assembly) .ExportAttributedTypes(); assembly = System.Reflection.Assembly.Load("CommonSettings.BLL"); registrationBlock.ExportAssembly(assembly) .ExportAttributedTypes(); var logger = NLog.LogManager.CreateNullLogger(); registrationBlock.ExportInstance(logger).As <NLog.ILogger>() .Lifestyle.Singleton(); registrationBlock.ExportController(this.GetType().Assembly.ExportedTypes); }
public void Configure(IExportRegistrationBlock registrationBlock) { registrationBlock.ExportAssembly(typeof(IMigration).Assembly) .Where(y => typeof(IMigration).IsAssignableFrom(y)) .ByInterface <IMigration>() .Lifestyle.Singleton(); registrationBlock.Export <DatabaseManager>().WithCtorCollectionParam <IEnumerable <IMigration>, IMigration>() .Lifestyle.Singleton(); registrationBlock.ExportFactory <DatabaseManager, LocalDbContext>(c => c.Context).ExternallyOwned(); }