public void TestFixtureSetUp()
        {
            var modelAssembly = Assembly.Load("EventSourcing.Sample.Model");
            var applicationAssembly = Assembly.Load("EventSourcing.Sample.Application");
            var entityAssembly = Assembly.Load("EventSourcing.Sample.Entities");
            var mappingAssembly = Assembly.Load("EventSourcing.Sample.Entities.Mappings");
            var eventSubscriberAssembly = Assembly.Load("EventSourcing.Sample.EventSubscribers");
            var assemblies = new Assembly[] { modelAssembly, applicationAssembly, entityAssembly, mappingAssembly, eventSubscriberAssembly };

            try
            {
                Configuration.Create("EventSourcing.Sample")
                    .Install(new DefaultConfigurationInstaller(Assembly.GetExecutingAssembly()))
                    .Castle()
                    .CastleTransaction()
                    .CastleUnitOfWorkManager()
                    .Log4Net()
                    .RegisterComponents(assemblies)
                    .NHibernate(assemblies);
            }
            catch (Exception e)
            {
                if (!e.Message.Contains("不可重复初始化框架配置"))
                {
                    Console.WriteLine(e.Message);
                    throw e;
                }
            }

            this._logger = DependencyResolver.Resolve<ILoggerFactory>().Create(this.GetType().Name);
            this._sessionManager = DependencyResolver.Resolve<INHibernateSessionManager>();
        }
Exemple #2
0
        public void TestFixtureSetUp()
        {
            var modelAssembly           = Assembly.Load("EventSourcing.Sample.Model");
            var applicationAssembly     = Assembly.Load("EventSourcing.Sample.Application");
            var entityAssembly          = Assembly.Load("EventSourcing.Sample.Entities");
            var mappingAssembly         = Assembly.Load("EventSourcing.Sample.Entities.Mappings");
            var eventSubscriberAssembly = Assembly.Load("EventSourcing.Sample.EventSubscribers");
            var assemblies = new Assembly[] { modelAssembly, applicationAssembly, entityAssembly, mappingAssembly, eventSubscriberAssembly };

            try
            {
                Configuration.Create("EventSourcing.Sample")
                .Install(new DefaultConfigurationInstaller(Assembly.GetExecutingAssembly()))
                .Castle()
                .CastleTransaction()
                .CastleUnitOfWorkManager()
                .Log4Net()
                .RegisterComponents(assemblies)
                .NHibernate(assemblies);
            }
            catch (Exception e)
            {
                if (!e.Message.Contains("不可重复初始化框架配置"))
                {
                    Console.WriteLine(e.Message);
                    throw e;
                }
            }

            this._logger         = DependencyResolver.Resolve <ILoggerFactory>().Create(this.GetType().Name);
            this._sessionManager = DependencyResolver.Resolve <INHibernateSessionManager>();
        }
Exemple #3
0
 public NHibernateUnitOfWork(INHibernateSessionManager sessionManager, ISyncMessageBus eventBus, ILoggerFactory loggerFactory, IDomainHandlerMetaDataProvider metaDataProvider)
     : base(eventBus, loggerFactory, metaDataProvider)
 {
     //这里在构造函数中激活NHibernate的Session,
     //这样做的目的是确保在Castle提交事务时,不会有新的Session注册到Castle的事务上;
     //Castle不允许在提交事务的过程中再有创建Session的情况出现,否则会抛出资源竞争并发冲突异常。
     sessionManager.OpenSession();
 }
 public NHibernateUnitOfWork(INHibernateSessionManager sessionManager, ISyncMessageBus eventBus, ILoggerFactory loggerFactory, IDomainHandlerMetaDataProvider metaDataProvider)
     : base(eventBus, loggerFactory, metaDataProvider)
 {
     //这里在构造函数中激活NHibernate的Session,
     //这样做的目的是确保在Castle提交事务时,不会有新的Session注册到Castle的事务上;
     //Castle不允许在提交事务的过程中再有创建Session的情况出现,否则会抛出资源竞争并发冲突异常。
     sessionManager.OpenSession();
 }
 /// <summary>
 /// 构造函数
 /// </summary>
 public NHibernateSnapshotStoreBase(
     INHibernateSessionManager sessionManager,
     IJsonSerializer snapshotSerializer,
     ITypeNameMapper typeNameMapper,
     ISnapshotTypeProvider snapshotTypeProvider,
     ILoggerFactory loggerFactory)
 {
     _sessionManager       = sessionManager;
     _snapshotSerializer   = snapshotSerializer;
     _typeNameMapper       = typeNameMapper;
     _snapshotTypeProvider = snapshotTypeProvider;
     _logger = loggerFactory.Create("EventSourcing.NHibernateSnapshotStoreBase");
 }
 /// <summary>
 /// 构造函数
 /// </summary>
 public NHibernateEventStoreBase(
     INHibernateSessionManager sessionManager,
     IJsonSerializer eventSerializer,
     ITypeNameMapper typeNameMapper,
     IAggregateRootEventTypeProvider aggregateRootEventTypeProvider,
     ILoggerFactory loggerFactory)
 {
     _sessionManager  = sessionManager;
     _eventSerializer = eventSerializer;
     _typeNameMapper  = typeNameMapper;
     _aggregateRootEventTypeProvider = aggregateRootEventTypeProvider;
     _logger = loggerFactory.Create("EventSourcing.NHibernateEventStoreBase");
 }
 public NHibernateUnitOfWork(INHibernateSessionManager nHibernateSessionManager)
 {
     _nHibernateSessionManager = nHibernateSessionManager;
 }
Exemple #8
0
 public NHibernateDapperQueryService(INHibernateSessionManager sessionManager)
 {
     _sessionManager = sessionManager;
 }
 public NHibernateSubscriptionStorage(INHibernateSessionManager sessionManager)
 {
     _sessionManager = sessionManager;
 }
 public NHibernateSubscriptionStorage(INHibernateSessionManager sessionManager)
 {
     _sessionManager = sessionManager;
 }