public static void Init(IIoC ioc) { ioc.Register <IConnectionStringProvider, ConnectionStringProvider>(); ioc.Register <IUnitOfWork, EfUnitOfWork>(); ioc.Register <IDbContextFactory, DbContextFactory>(); ioc.Register <IRepositoryFactory, RepositoryFactory>(); ioc.Register <IDbVersionProvider, DbVersionProvider>(); OrmInitializer.Init(); ioc.Get <IPredefinedDataManager>().Register("_02_", new ForumInitializer()); }
private static void SetupInversionOfControl() { _ioc = Locator.GetContainer(); _ioc.Register <ICertificateIdentifier, CertificateIdentifier>() .Extend() .WithSpecific <string>(ConfigurationManager.AppSettings["Encryption-Certificate-Identifier"]); _ioc.Register <CertificateObtainerSettings>() .Extend() .WithSpecific <StoreName>(StoreName.My) .WithSpecific <StoreLocation>(StoreLocation.LocalMachine) .WithSpecific <X509FindType>(X509FindType.FindBySerialNumber) .WithResolveStrategy(ConstructorResolveStrategy.Complex); _ioc.Register <ICertificateObtainer, CertificationStoreExactCertificateObtainer>() .Extend() .WithResolveStrategy(ConstructorResolveStrategy.Complex); _ioc.Register <RsaCertificateEncryptor>(provider => new RsaCertificateEncryptor(provider.Resolve <ICertificateObtainer>(), RSAEncryptionPadding.OaepSHA1)); }
/// <summary> /// Initialise MVVM Mappings but does not load a default page /// </summary> /// <typeparam name="TInitiliser">Initialisation class</typeparam> /// <param name="ioC">Inversion of Control implementation to use</param> /// <returns>Asynchronous Task</returns> public static async Task InitiliseAsync <TInitiliser>(IIoC ioC, bool includeNavigationPage = true) where TInitiliser : Initiliser { IoC = ioC; IoC.Register(Activator.CreateInstance <TInitiliser>()); }
public static IIoC Register(this IIoC ioc, Type type, params object[] args) { return(ioc.Register(type, args)); }
public static IIoC Register <T>(this IIoC ioc, params object[] args) { return(ioc.Register(typeof(T), args)); }
public static IIoC Register <T>(this IIoC ioc, string id) { return(ioc.Register(typeof(T), id)); }
public static IIoC Register(this IIoC ioc, Type type) { return(ioc.Register(type)); }
public static IIoC Register <T>(this IIoC ioc) { return(ioc.Register(typeof(T))); }
public static IIoC Register <T>() { return(_current.Register(typeof(T))); }
/** * Register services to IOC * **/ public static void RegisterApplicationServices(this IIoC ioc) { ioc.Register <ICustomerRepositoryDB>() .Register <IPartInvoiceRepositoryDB>() .Register <Services.PartAvailabilityService.IPartAvailabilityService>(); }
private static void SetupInversionOfControl() { _ioc = Locator.GetContainer(); _ioc.Register <IDirectoryWrapper, DirectoryWrapper>(); _ioc.Register <IFileWrapper, FileWrapper>(); if (bool.Parse(ConfigurationManager.AppSettings["Use-SSH-Tunel"])) { _ioc.Register <ISSHTunel, SSHTunel>() .Extend() .WithResolveStrategy(ConstructorResolveStrategy.Complex); } _ioc.Register <IMongoDataSource, MongoDatabaseDataSource>() .Extend() .WithSpecific <string>(ConfigurationManager.AppSettings["Mongo-Connection-String"]) .WithResolveStrategy(ConstructorResolveStrategy.Complex); _ioc.Register <IServiceExporter, ServiceMainExporter>(); _ioc.Register <DatabaseExporterWindowsService>(); if (Environment.UserInteractive) { _ioc.Register <IProcessInterupter, ConsoleProcessInterupter>(); _ioc.Register <IExportScheduler, ConsoleScheduler>(); _ioc.Register <IContinueDecision, ConsoleContinueDecision>(); _ioc.Register <ICustomLogger, ConsoleLogger>(); } else { _ioc.Register <IProcessInterupter, EmptyProcessInterupter>(); _ioc.Register <IExportScheduler, ServiceScheduler>(); _ioc.Register <IContinueDecision, ServiceContinueDecision>(); _ioc.Register <ICustomLogger, EventLogLogger>(); } if (bool.Parse(ConfigurationManager.AppSettings["Export-To-FS"])) { _ioc.Register <ISpecificUnifiExporter, UnifiToFileSystemExporter>() .Extend() .WithSpecific <string>(ConfigurationManager.AppSettings["Backup-Path"]); } if (bool.Parse(ConfigurationManager.AppSettings["Export-To-DB"])) { _ioc.Register <ISpecificUnifiExporter, UnifiToSqlDatabaseExporter>() .Extend() .WithSpecific <int>(int.Parse(ConfigurationManager.AppSettings["Sql-Batch-Size"])); } string connectionString = ConfigurationManager.AppSettings["Sql-Connection-String"]; _ioc.Register <IDatabaseChecker, DatabaseChecker>() .Extend() .WithSpecific <string>(connectionString); _ioc.Register <IDatabaseWriter, DatabaseWriter>() .Extend() .WithSpecific <string>(connectionString); if (bool.Parse(ConfigurationManager.AppSettings["Use-Encrypted-Psswords"])) { _ioc.Register <ICertificateIdentifier, CertificateIdentifier>() .Extend() .WithSpecific <string>(ConfigurationManager.AppSettings["Encryption-Certificate-Identifier"]); _ioc.Register <CertificateObtainerSettings>() .Extend() .WithSpecific <StoreName>(StoreName.My) .WithSpecific <StoreLocation>(StoreLocation.LocalMachine) .WithSpecific <X509FindType>(X509FindType.FindBySerialNumber) .WithResolveStrategy(ConstructorResolveStrategy.Complex); _ioc.Register <ICertificateObtainer, CertificationStoreExactCertificateObtainer>() .Extend() .WithResolveStrategy(ConstructorResolveStrategy.Complex); _ioc.Register <RsaCertificateEncryptor>(provider => new RsaCertificateEncryptor(provider.Resolve <ICertificateObtainer>(), RSAEncryptionPadding.OaepSHA1)); _ioc.Register <ICustomCredential>(provider => new EncryptedCredential(ConfigurationManager.AppSettings["Sql-User-Id"], ConfigurationManager.AppSettings["Sql-User-Password"], provider.Resolve <RsaCertificateEncryptor>())); } else { _ioc.Register <ICustomCredential>(provider => new CustomCredential(ConfigurationManager.AppSettings["Sql-User-Id"], ConfigurationManager.AppSettings["Sql-User-Password"])); } _ioc.Register <ICheckerCommandCreatorProvider, CheckerCommandCreatorProvider>(); _ioc.Register <IWriterCommandCreatorProvider, WriterCommandCreatorProvider>(); _ioc.Register <IBlacklistItemParser, BlacklistItemParser>(); _ioc.Register <IBlacklist, SimpleTableBlacklist>() .Extend() .WithSpecific <string>(ConfigurationManager.AppSettings["Blacklisted-Table-Names"]); }