public static LambdaInstance <object> ForRepositoriesUseSharpRepository(this IInitializationExpression initialization, string repositoryName = null) { initialization.Scan(scan => scan.IncludeNamespaceContainingType <IAmInRepository>()); initialization.For(typeof(IRepository <>)) .Use(context => { var genericArgs = context.BuildStack.Current.RequestedType.GetGenericArguments(); return(RepositoryFactory.GetInstance(genericArgs[0], repositoryName)); } ); initialization.For(typeof(IRepository <,>)) .Use(context => { var genericArgs = context.BuildStack.Current.RequestedType.GetGenericArguments(); return(RepositoryFactory.GetInstance(genericArgs[0], genericArgs[1], repositoryName)); } ); return(initialization.For(typeof(ICompoundKeyRepository <, ,>)) .Use(context => { var genericArgs = context.BuildStack.Current.RequestedType.GetGenericArguments(); return RepositoryFactory.GetInstance(genericArgs[0], genericArgs[1], genericArgs[2], repositoryName); } )); }
private void ConfigureConfiguration(IInitializationExpression x) { var outputLanguage = ConfigurationManager.AppSettings["OutputLanguage"]; switch (outputLanguage) { case "C#": x.For<ICodeWriter>().Use<CSharpCodeWriter>(); break; case "VB": x.For<ICodeWriter>().Use<VBCodeWriter>(); break; default: throw new NotImplementedException("OutputLanguage value in config file must be one of the following: C#, VB."); } var testFramework = ConfigurationManager.AppSettings["TestFramework"]; switch (testFramework) { case "MSTest": x.For<IConfiguration>().Use<MSTestConfiguration>(); break; case "NUnit": x.For<IConfiguration>().Use<NUnitConfiguration>(); break; default: throw new NotImplementedException("TestFramework value in config file must be one of the following: MSTest, NUnit."); } }
protected virtual void InitializeStructureMap(IInitializationExpression ex) { ex.ForSingletonOf<SparkViewFactory>(); ex.For<IServiceLocator>().Use<StructureMapServiceLocator>(); ex.For<ISparkSettings>().Use(GetSparkSettings); ex.For(typeof(ISparkViewRenderer<>)).Use(typeof(SparkViewRenderer<>)); }
private static void InitializeContainer(IInitializationExpression exp) { exp.For <IDbContextManager>() .Use <DbContextManager>(); exp.FillAllPropertiesOfType <IDbContextManager>() .Use <DbContextManager>(); exp.For(typeof(ISimpleRepository <>)) .Use(typeof(SimpleRepository <>)); exp.For <IAuthentication>() .Use <Authentication>(); exp.FillAllPropertiesOfType <IAuthentication>() .Use <Authentication>(); exp.Scan(cfg => { cfg.AssemblyContainingType <RepositoryBase>(); cfg.IncludeNamespaceContainingType <RepositoryBase>(); cfg.SingleImplementationsOfInterface(); }); AssemblyScanner.FindValidatorsInAssemblyContaining <RegistrationModelValidation>() .ForEach(result => exp.For(result.InterfaceType) .Singleton() .Use(result.ValidatorType)); }
private void Initialize(IInitializationExpression x) { x.Scan(Scan); // Web.config/app settings x.For <ApplicationSettings>().Singleton().Use(_applicationSettings); // Set the 2 core types to use HTTP/Thread-based lifetimes x.For <IRepository>().HybridHttpOrThreadLocalScoped(); x.For <IUserContext>().HybridHttpOrThreadLocalScoped(); // Plugins x.For <IPluginFactory>().Singleton().Use <PluginFactory>(); // Screwturn importer x.For <IWikiImporter>().Use <ScrewTurnImporter>(); // Cache x.For <ObjectCache>().Use(new MemoryCache("Roadkill")); x.For <ListCache>().Singleton(); x.For <SiteCache>().Singleton(); x.For <PageViewModelCache>().Singleton(); x.For <IPluginCache>().Use <SiteCache>(); // Site sttings x.For <ConfigReaderWriter>().Use <FullTrustConfigReaderWriter>(); // Security x.For <IAuthorizationProvider>().Use <AuthorizationProvider>(); x.For <IActiveDirectoryProvider>().Use <ActiveDirectoryProvider>(); }
private static void AddGitChangeTypes(IInitializationExpression initializer) { initializer.InstanceOf<IGitChangedFile>().Is.OfConcreteType<Add>().WithName("A"); initializer.InstanceOf<IGitChangedFile>().Is.OfConcreteType<Modify>().WithName("M"); initializer.InstanceOf<IGitChangedFile>().Is.OfConcreteType<Delete>().WithName("D"); initializer.InstanceOf<IGitChangedFile>().Is.OfConcreteType<RenameEdit>().WithName("R"); }
private static void InitContainer(IInitializationExpression container) { container.Scan( scan => { scan.TheCallingAssembly(); scan.WithDefaultConventions(); }); container.For <ISessionContainer>().Use <HttpContextSessionContainer>(); container.For <IConfigAccessor>().Use <FileConfigAccessor>(); container.For <ILogger>().Use <Log4NetLogger>(); container.For <IImageGenerator>().Use <ImageGenerator>(); container.For <IIdentity>().Use(i => HttpContext.Current.User.Identity); container.For <INotificationSender>().Use <AsyncNotificationSender>(); container.For <Markdown>().Use( new Markdown(new MarkdownOptions { AutoHyperlink = true, AutoNewLines = true, EncodeProblemUrlCharacters = true })); MailConfiguration mailConfiguration = new MailConfiguration { MailFrom = ConfigurationManager.AppSettings["mail-from"], SmtpHost = ConfigurationManager.AppSettings["mail-smtpHost"], Username = ConfigurationManager.AppSettings["mail-username"], Password = ConfigurationManager.AppSettings["mail-password"] }; container.For <MailConfiguration>().Use(m => mailConfiguration); }
public static void ConfigureDataAccess(IInitializationExpression i, string sqlServerAddress, string username, string password, string database, InstanceScope sessionScope) { NHibernate.Cfg.Configuration cfg; ConfigureDataAccess(i, MsSqlConfiguration.MsSql2005.ConnectionString(c => c.Server(sqlServerAddress).Username(username).Password(password).Database(database)),sessionScope, out cfg); }
private static void InitializeStructureMap(IInitializationExpression ex) { ex.AddRegistry <MassTransitRegistry>(); ex.AddRegistry <CoreRegistry>(); _signalRRegistry = new SignalRRegistry(); ex.AddRegistry(_signalRRegistry); }
static void wire_up_domain(IInitializationExpression x) { x.For<IQuoteRepository>().Use<QuoteRepository>(); //x.For<ISqlJobMetricRepository>().Use<MockupSqlJobMetricRepository>(); x.For<ISqlJobMetricRepository>().Use<SqlJobMetricRepository>(); //x.For<IErrorLogRepository>().Use<mockupErrorLogRepository>(); x.For<IErrorLogRepository>().Use<ErrorLogRepository>(); }
private static void InitializeStructureMap(IInitializationExpression ex) { ex.AddRegistry<MassTransitRegistry>(); ex.AddRegistry<CoreRegistry>(); _signalRRegistry = new SignalRRegistry(); ex.AddRegistry(_signalRRegistry); }
private static void Initialize(IInitializationExpression initializer) { initializer.Scan(Initialize); initializer.ForRequestedType<TextWriter>().TheDefault.Is.ConstructedBy(() => Console.Out); initializer.InstanceOf<IGitRepository>().Is.OfConcreteType<GitRepository>(); AddGitChangeTypes(initializer); DoCustomConfiguration(initializer); }
private static void InitializeInfrastructure(IInitializationExpression e) { e.For<IMessageHandler>().Use<MessageHandler>(); e.For<IChannelWrapper>().Use<ChannelWrapper>(); e.For<IRuleLoader>().Use<RuleLoader>(); e.For<IRuleEngine>().Use<RuleEngine>(); e.For<NotificationConsumer>().Use<NotificationConsumer>(); }
/// <summary> /// Инициализация IoC контейнера для оракла /// </summary> /// <param name="x">Инициализатор</param> /// <param name="connectionString">Строка подключения</param> private static void InitializeStructureMapForOracleFile(IInitializationExpression x, string connectionString) { var connection = new FileConnection(connectionString); var strategy = new OracleStrategy(connection); x.ForSingletonOf <IDbConnection>().Use(connection); x.ForSingletonOf <IDatabaseStrategy>().Use(strategy); x.ForSingletonOf <ISysDatabaseStrategy>().Use(new FileSysStrategy(new OracleSysStrategy(connection, strategy), connection)); }
private static void InitializeStructureMap(IInitializationExpression x) { x.Scan(y => { y.TheCallingAssembly(); y.WithDefaultConventions(); y.AddAllTypesOf(typeof(IConsumer <>)); } ); }
private void ConfigureStructureMap(IInitializationExpression initializer) { initializer.Scan(y => { y.Assembly("TodayIShall.Core"); y.WithDefaultConventions(); }); initializer.ForRequestedType<IAuthCookieGenerator>().TheDefaultIsConcreteType<AuthCookieGenerator>(); initializer.AddRegistry(new MongoRegistry()); }
private static void SetScanningPolicy(IInitializationExpression x) { x.Scan(scan => { scan.AssembliesFromApplicationBaseDirectory( filter => filter.FullName.StartsWith("CleanArchitecture")); scan.WithDefaultConventions(); }); }
/// <summary> /// Инициализация IoC контейнера для оракла /// </summary> /// <param name="x">Инициализатор</param> /// <param name="connectionString">Строка подключения</param> private static void InitializeStructureMapForOracle(IInitializationExpression x, string connectionString) { var assembly = Assembly.Load("Oracle.DataAccess"); var connectionType = assembly.GetType("Oracle.DataAccess.Client.OracleConnection"); var connection = Activator.CreateInstance(connectionType, connectionString) as IDbConnection; x.ForSingletonOf <IDbConnection>().Use(connection); x.ForSingletonOf <IDatabaseStrategy>().Use <OracleStrategy>(); x.ForSingletonOf <ISysDatabaseStrategy>().Use <OracleSysStrategy>(); }
private static void DoCustomConfiguration(IInitializationExpression initializer) { foreach(var type in typeof(Program).Assembly.GetTypes()) { foreach(ConfiguresStructureMap attribute in type.GetCustomAttributes(typeof(ConfiguresStructureMap), false)) { attribute.Initialize(initializer, type); } } }
private static void InitializeInfrastructure(IInitializationExpression e) { // Transient e.For<IHttpContextHandler>().Use<HttpContextHandler>(); e.For<IChannelWrapper>().Use<ChannelWrapper>(); // Singleton e.For<IMessageBusSender>().Singleton().Use<MessageBusSender>(); e.For<IUrlBuilder>().Singleton().Use<UrlBuilder>(); e.For<IJavaScriptTimeCalculator>().Singleton().Use<JavaScriptTimeCalculator>(); }
private static void InitializeStructureMap(IInitializationExpression x) { x.Scan(y => { y.Assembly("ILeaf.Core"); y.Assembly("ILeaf.Repository"); y.Assembly("ILeaf.Service"); //y.Assembly("Senparc.Models"); y.WithDefaultConventions(); }); }
private static void RegisterInterceptors(IInitializationExpression exp) { var interceptorTypes = from t in typeof(IoC).Assembly.GetTypes() where typeof(TypeInterceptor).IsAssignableFrom(t) select t; foreach (var type in interceptorTypes) { exp.RegisterInterceptor(Activator.CreateInstance(type) as TypeInterceptor); } }
/// <summary> /// Configure repository for ISS /// </summary> /// <param name="initialize"></param> public void Configure(IInitializationExpression initialize) { AutoMapperConfiguration.Instance.Configure(); initialize.Scan(x => { x.Assembly("Db.Interfaces"); x.Assembly("Db.ImplementSQL"); x.WithDefaultConventions(); }); }
public void Configure(IInitializationExpression initialize) { initialize.AddRegistry<CommonRegistry>(); Db.ImplementSQL.Configuration.Instance.Configure(initialize); initialize.Scan(x => { x.Assembly("Service.ContractImplement"); x.WithDefaultConventions(); }); }
private static void InitializeStructureMap(IInitializationExpression x) { x.Scan(y => { y.Assembly("ShortestPath.Web"); y.Assembly("ShortestPath.Core"); y.With<DefaultConventionScanner>(); } ); x.AddRegistry<NHibernateRegistry>(); x.ForRequestedType<IThreadCache>().CacheBy(InstanceScope.Hybrid).TheDefaultIsConcreteType<ThreadCache>(); }
public static void ScanMyCqrsTypes(IInitializationExpression initializationExpression) { initializationExpression.Scan(scan => { scan.Assembly("MyCqrs"); scan.TheCallingAssembly(); scan.WithDefaultConventions(); scan.ConnectImplementationsToTypesClosing(typeof (IViewFactory<,>)); scan.ConnectImplementationsToTypesClosing(typeof (IViewFactory<>)); scan.ConnectImplementationsToTypesClosing(typeof (ICommandHandler<>)); scan.ConnectImplementationsToTypesClosing(typeof (IEventHandler<>)); }); }
/// <summary> /// Initializes StructureMap to scan the assemblies and setup all the /// needed elements. /// </summary> /// <param name="init"></param> private static void InitializeStructureMap(IInitializationExpression init) { init.Scan( s => { // Determine which assemblies contain types we need. s.AssembliesFromApplicationBaseDirectory( a => a.FullName.Contains("AuthorIntrusion")); // List all the assemblies we need. Since most of the // plugins are required to register IPlugin, we can just // add those types. s.AddAllTypesOf <IPlugin>(); }); }
/// <summary> /// Facilitate manual configuration of container /// </summary> /// <param name="exp"></param> public static void ManualStructuremapSetup(IInitializationExpression exp, string hubConnectionString, string localConnectionString) { exp.For<CokeDataContext>() .Use<CokeDataContext>() .Ctor<string>("connectionString") .Is(hubConnectionString); exp.For<DistributrLocalContext>().Use<DistributrLocalContext>().Ctor<string>("connectionString").Is(localConnectionString); //exp.For<ICacheProvider>().Use(DefaultCacheProvider.GetInstance()); exp.For<IDTOToEntityMapping>().Use<DTOToEntityMapping>(); foreach (var item in WPFRepositoryDefaultServices.DefaultServiceList()) { exp.For(item.Item1).Use(item.Item2); } }
static void wire_up_database(IInitializationExpression r) { var encrypted_connection_strings = ConfigurationManager.ConnectionStrings; r.ForSingletonOf<ICrypto>().Use<Crypto>() .Ctor<String>("masterCipher").EqualToAppSetting("PassPhrase"); r.ForSingletonOf<IConnectionStringManager>() .Use<ConnectionStringManager>() .Ctor<ConnectionStringSettingsCollection>("encryptedConnections").Is(encrypted_connection_strings) .Ctor<bool>("ignoreLocalSqlServer").Is(true); r.For<IDbConnection>().Use<SqlConnection>() .Ctor<string>("connectionString").Is( x => x.GetInstance<IConnectionStringManager>().Find("dashboard_connection_string").ConnectionString); }
private static void OnInitialize(IInitializationExpression x) { AddSingleton <IMainWindow, MainWindow>(x); AddSingleton <IMainWindowViewModel, MainWindowViewModel>(x); Add <IModalWindow, ModalWindow>(x); Add <IModalWindowViewModel, ModalWindowViewModel>(x); Add <IChildView, ChildView>(x); Add <IChildViewModel, ChildViewModel>(x); Add <ISecondChildView, SecondChildView>(x); Add <ISecondChildViewModel, SecondChildViewModel>(x); Add <ICustomerView, CustomerView>(x); Add <ICustomerViewModel, CustomerViewModel>(x); AddSingleton <IRepository <Customer>, CustomersRepository>(x); Inject <IRepository <Customer> >(x); }
public static void ConfigureDataAccess(IInitializationExpression i, IPersistenceConfigurer databaseConfigurer, InstanceScope sessionScope, out NHibernate.Cfg.Configuration cfg) { cfg = new NHibernate.Cfg.Configuration(); i.ForRequestedType<ISessionFactory>() .CacheBy(InstanceScope.Singleton) .TheDefault.IsThis(ConfigureNHibernate(databaseConfigurer, cfg)); i.ForRequestedType<ISession>() .CacheBy(sessionScope) .TheDefault.Is.ConstructedBy(() => ObjectFactory.GetInstance<ISessionFactory> ().OpenSession()); //More StructureMap configuration goes here: //i.ForRequestedType<ISomeModelRepository>() // .CacheBy(InstanceScope.PerRequest) // .TheDefaultIsConcreteType<SomeModelRepository>(); }
private static void InitializeStructureMap(IInitializationExpression x) { x.Scan(y => { y.Assembly("ChuangLiTou.Core.IDal"); y.WithDefaultConventions(); }); x.Scan(y => { y.Assembly("ChuangLiTou.Core.ImplDal"); y.WithDefaultConventions(); }); x.Scan(y => { y.TheCallingAssembly(); y.AddAllTypesOf <IController>() .NameBy(type => type.FullName != null ? type.FullName.ToLowerInvariant() : null); }); }
/// <summary> /// Called when [initialize]. /// </summary> /// <param name="x">The x.</param> private static void OnInitialize(IInitializationExpression x) { ////MainWindow x.For <IMainWindow>().Singleton().Use <MainWindow>(); x.For <IMainWindowViewModel>().Singleton().Use <MainWindowViewModel>(); ////PWPMain x.For <IPWPMainView>().Singleton().Use <PWPMain>(); x.For <IPWPMainViewModel>().Singleton().Use <PWPMainViewModel>(); ////PromptOrigin x.For <IPromptOriginView>().Use <PromptOrigin>(); x.For <IPromptOriginViewModel>().Use <PromptOriginViewModel>(); ////PromptWindow x.For <IPromptWindow>().Use <PromptWindow>(); x.For <IPromptWindowViewModel>().Use <PromptWindowViewModel>(); ////Prompt x.For <IPromptView>().Use <Prompt>(); x.For <IPromptViewModel>().Use <PromptViewModel>(); }
private static void OnInitialize(IInitializationExpression x) { x.For <IMainWindow>().Singleton().Use <MainWindow>(); x.For <IMainWindowViewModel>().Singleton().Use <MainWindowViewModel>(); x.For <ILoadDataView>().Use <LoadDataView>(); x.For <ILoadDataViewModel>().Use <LoadDataViewModel>(); x.For <IGetRecommendationValueView>().Use <GetRecommendationValueView>(); x.For <IGetRecommendationValueViewModel>().Use <GetRecommendationValueViewModel>(); x.For <IAddUserView>().Use <AddUserView>(); x.For <IAddUserViewModel>().Use <AddUserViewModel>(); x.For <IAddMovieView>().Use <AddMovieView>(); x.For <IAddMovieViewModel>().Use <AddMovieViewModel>(); x.For <IAddRatingView>().Use <AddRatingView>(); x.For <IAddRatingViewModel>().Use <AddRatingViewModel>(); x.For <IRecommendView>().Use <RecommendView>(); x.For <IRecommendViewModel>().Use <RecommendViewModel>(); x.For <IEvaluateView>().Use <EvaluateView>(); x.For <IEvaluateViewModel>().Use <EvaluateViewModel>(); x.For <ILoadResultsView>().Use <LoadResultsView>(); x.For <ILoadResultsViewModel>().Use <LoadResultsViewModel>(); x.For <IDataRepository>().Singleton().Use <InMemoryDataRepository>(); x.Policies.SetAllProperties(y => y.OfType <IDataRepository>()); x.For <IRecommendationsProvider>().Use <RecommendationsProvider>(); x.For <IEvaluatorsProvider>().Singleton().Use <EvaluatorsProvider>(); }
private static void InitializeContainer(IInitializationExpression exp) { exp.For <IDbContextManager>() .Use <DbContextManager>(); exp.FillAllPropertiesOfType <IDbContextManager>() .Use <DbContextManager>(); exp.For(typeof(ISimpleRepository <>)) .Use(typeof(SimpleRepository <>)); exp.For <IAuthentication>() .Use <Authentication>(); exp.FillAllPropertiesOfType <IAuthentication>() .Use <Authentication>(); exp.Scan(cfg => { cfg.AssemblyContainingType <RepositoryBase>(); cfg.IncludeNamespaceContainingType <RepositoryBase>(); cfg.SingleImplementationsOfInterface(); }); }
public static void Activate(this IInitializationExpression expression, string description, Action activation) { expression.For <IActivator>().Add <LambdaActivator>() .Ctor <string>().Is(description) .Ctor <Action>().Is(activation); }
protected override void InitializeContainer(IInitializationExpression initializationExpression) { base.InitializeContainer(initializationExpression); initializationExpression.For<IPluginContext>().HybridHttpOrThreadLocalScoped().Use<PluginContext>(); }
private static void InitStructureMap(IInitializationExpression x) { x.For<IFileSystem>().Use(() => TestContext.Current.FileSystemMoq.Object); }
protected override void InitializeStructureMap(IInitializationExpression ex) { }
private static void DoNothing(IInitializationExpression e) { }
public void Initialize(IInitializationExpression initializer, Type t) { initializer.ForRequestedType(t).CacheBy(InstanceScope.Singleton).TheDefaultIsConcreteType(t); }
protected virtual void InitializeContainer(IInitializationExpression initializationExpression) { initializationExpression.AddRegistry<PluginStorageWithSqlPersisterMockRegistry>(); }
// Rather have this replaced with something that returns an IContainer protected virtual void InitializeStructureMap(IInitializationExpression ex) { // no op, please override }
protected override void InitializeContainer(IInitializationExpression initializationExpression) { base.InitializeContainer(initializationExpression); initializationExpression.For <IPluginContext>().HybridHttpOrThreadLocalScoped().Use <PluginContext>(); }
private void Initialize(IInitializationExpression x) { x.Scan(Scan); // Web.config/app settings x.For<ApplicationSettings>().Singleton().Use(_applicationSettings); // Set the 2 core types to use HTTP/Thread-based lifetimes x.For<IRepository>().HybridHttpOrThreadLocalScoped(); x.For<IUserContext>().HybridHttpOrThreadLocalScoped(); // Plugins x.For<IPluginFactory>().Singleton().Use<PluginFactory>(); // Screwturn importer x.For<IWikiImporter>().Use<ScrewTurnImporter>(); // Cache x.For<ObjectCache>().Use(new MemoryCache("Roadkill")); x.For<ListCache>().Singleton(); x.For<SiteCache>().Singleton(); x.For<PageViewModelCache>().Singleton(); x.For<IPluginCache>().Use<SiteCache>(); // Site sttings x.For<ConfigReaderWriter>().Use<FullTrustConfigReaderWriter>(); // Security x.For<IAuthorizationProvider>().Use<AuthorizationProvider>(); #if !MONO x.For<IActiveDirectoryProvider>().Use<ActiveDirectoryProvider>(); #endif }
/// <summary> /// Инициализация IoC контейнера для оракла /// </summary> /// <param name="x">Инициализатор</param> /// <param name="connectionString">Строка подключения</param> private static void InitializeStructureMapForOracleFile(IInitializationExpression x, string connectionString) { var connection = new FileConnection(connectionString); var strategy = new OracleStrategy(connection); x.ForSingletonOf<IDbConnection>().Use(connection); x.ForSingletonOf<IDatabaseStrategy>().Use(strategy); x.ForSingletonOf<ISysDatabaseStrategy>().Use(new FileSysStrategy(new OracleSysStrategy(connection, strategy), connection)); }
/// <summary> /// Инициализация IoC контейнера для оракла /// </summary> /// <param name="x">Инициализатор</param> /// <param name="connectionString">Строка подключения</param> private static void InitializeStructureMapForOracle(IInitializationExpression x, string connectionString) { var assembly = Assembly.Load("Oracle.DataAccess"); var connectionType = assembly.GetType("Oracle.DataAccess.Client.OracleConnection"); var connection = Activator.CreateInstance(connectionType, connectionString) as IDbConnection; x.ForSingletonOf<IDbConnection>().Use(connection); x.ForSingletonOf<IDatabaseStrategy>().Use<OracleStrategy>(); x.ForSingletonOf<ISysDatabaseStrategy>().Use<OracleSysStrategy>(); }
public static void Initialize(IInitializationExpression x) { x.For <IDataStore>().Use <TellHerDb>(); }
protected override void InitializeStructureMap(IInitializationExpression ex) { ex.For<IHttpSession>().Use<CurrentHttpContextSession>(); }
protected virtual void InitializeContainer(IInitializationExpression initializationExpression) { initializationExpression.AddRegistry <PluginStorageWithSqlPersisterMockRegistry>(); }
public abstract void Initialize(IInitializationExpression config);
/// <summary> /// Инициализация IoC контейнера /// </summary> /// <param name="x">Инициализатор</param> /// <param name="connectionString">Строка подключения</param> private static void InitializeStructureMapForMssql(IInitializationExpression x, string connectionString) { x.ForSingletonOf <IDbConnection>().Use(new SqlConnection(connectionString)); x.ForSingletonOf <IDatabaseStrategy>().Use <MsSql2008Strategy>(); x.ForSingletonOf <ISysDatabaseStrategy>().Use <MsSql2008SysStrategy>(); }
/// <summary> /// Инициализация IoC контейнера /// </summary> /// <param name="x">Инициализатор</param> /// <param name="connectionString">Строка подключения</param> private static void InitializeStructureMapForMssql(IInitializationExpression x, string connectionString) { x.ForSingletonOf<IDbConnection>().Use(new SqlConnection(connectionString)); x.ForSingletonOf<IDatabaseStrategy>().Use<MsSql2008Strategy>(); x.ForSingletonOf<ISysDatabaseStrategy>().Use<MsSql2008SysStrategy>(); }