NSoft.NFramework.Data.NHibernateEx.ForTesting.UnitOfWorkTestContext.FluentFor C# (CSharp) Method

FluentFor() public static method

인자에 맞는 UnitOfWorkTestContext의 인스턴스를 빌드한다.
public static FluentFor ( string containerConfigPath, UnitOfWorkTestContextDbStrategy dbStrategy, MappingInfo mappingInfo, Action configAction ) : UnitOfWorkTestContext
containerConfigPath string IoC 환경설정 파일경로
dbStrategy UnitOfWorkTestContextDbStrategy 테스트용 DB 생성 전략
mappingInfo MappingInfo NHibernate용 Entity 정보
configAction Action 추가 환경설정 작업용 델리게이트
return UnitOfWorkTestContext
        public static UnitOfWorkTestContext FluentFor(string containerConfigPath,
                                                      UnitOfWorkTestContextDbStrategy dbStrategy,
                                                      MappingInfo mappingInfo,
                                                      Action<NHibernate.Cfg.Configuration> configAction,
                                                      params IConvention[] conventions) {
            return new FluentNHUnitOfWorkTestContext(dbStrategy, containerConfigPath, mappingInfo, configAction, conventions);
        }

Same methods

UnitOfWorkTestContext::FluentFor ( IWindsorContainer container, UnitOfWorkTestContextDbStrategy dbStrategy, MappingInfo mappingInfo, Action configAction ) : UnitOfWorkTestContext

Usage Example

Example #1
0
            protected internal UnitOfWorkTestContext GetUnitOfWorkTestContext()
            {
                Predicate <UnitOfWorkTestContext> criteria;

                if (_container == null)
                {
                    criteria = ctx => ctx.ContainerConfigPath == StringOrEmpty(_containerConfigPath) &&
                               ctx.DatabaseEngine == _root.DatabaseEngine &&
                               ctx.DatabaseName == _root.DatabaseName;
                }
                else
                {
                    criteria = ctx => ctx.Container == _container &&
                               ctx.DatabaseEngine == _root.DatabaseEngine &&
                               ctx.DatabaseName == _root.DatabaseName;
                }

                var context = Contexts.Find(criteria);

                if (context == null)
                {
                    var dbStrategy = UnitOfWorkTestContextDbStrategy.For(_root.DatabaseEngine,
                                                                         _root.DatabaseName,
                                                                         _root.NHibernateConfigurationProperties);

                    context = (_container != null)
                                  ? UnitOfWorkTestContext.FluentFor(_container, dbStrategy, _root.MappingInfo, _root.ConfigAction,
                                                                    _root.Conventions)
                                  : UnitOfWorkTestContext.FluentFor(_containerConfigPath, dbStrategy, _root.MappingInfo,
                                                                    _root.ConfigAction, _root.Conventions);

                    Contexts.Add(context);

                    if (IsDebugEnabled)
                    {
                        log.Debug("Create another UnitOfWorkContext for: [{0}]", context);
                    }
                }
                return(context);
            }