public override bool Execute() { AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve; AppDomain.CurrentDomain.TypeResolve += CurrentDomain_AssemblyResolve; try { InPlaceConfigurationSource src = new InPlaceConfigurationSource(); IDictionary <string, string> cfg = new Dictionary <string, string>(); cfg[Environment.Dialect] = dialect; cfg[Environment.ConnectionDriver] = driver; cfg[Environment.ConnectionString] = connectionString; src.PluralizeTableNames = PloralizeTableNames; src.Add(typeof(ActiveRecordBase), cfg); List <Assembly> loadedAssemblies = new List <Assembly>(); foreach (ITaskItem assembly in assemblies) { Assembly asm = Assembly.LoadFrom(assembly.ItemSpec); loadedAssemblies.Add(asm); } ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize(loadedAssemblies.ToArray(), src); Configuration configuration = ActiveRecordMediator.GetSessionFactoryHolder().GetConfiguration(typeof(ActiveRecordBase)); new SchemaExport(configuration).Execute(true, true, false); } finally { AppDomain.CurrentDomain.AssemblyResolve -= CurrentDomain_AssemblyResolve; AppDomain.CurrentDomain.TypeResolve -= CurrentDomain_AssemblyResolve; } return(true); }
public override void InitializeContainerAndUowFactory() { if (IoC.IsInitialized) { IoC.Reset(); } ActiveRecordStarter.ResetInitializationFlag(); if (RhinoContainer != null) { IoC.Initialize(RhinoContainer); } if (IoC.IsInitialized && IoC.Container.Kernel.HasComponent(typeof(INHibernateInitializationAware))) { foreach (INHibernateInitializationAware initializer in IoC.ResolveAll <INHibernateInitializationAware>()) { initializer.BeforeInitialization(); } } CallInitializationAwareConfigureIfExists(); ActiveRecordStarter.Initialize(MappingInfo.MappingAssemblies, ActiveRecordConfigs); if (IoC.IsInitialized && IoC.Container.Kernel.HasComponent(typeof(INHibernateInitializationAware))) { foreach (INHibernateInitializationAware initializer in IoC.ResolveAll <INHibernateInitializationAware>()) { initializer.Initialized(Configuration, SessionFactory); } } ActiveRecordMediator.GetSessionFactoryHolder().RegisterSessionFactory(SessionFactory, typeof(ActiveRecordBase)); }
// overrides the setup in the base class public void Prepare() { ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize(GetConfigSource(), typeof(Blog), typeof(Post)); ActiveRecordStarter.CreateSchema(); Post.DeleteAll(); Blog.DeleteAll(); Blog blog = new Blog(); blog.Name = "hammett's blog"; blog.Author = "hamilton verissimo"; blog.Save(); Post p; p = new Post(blog, "a", "b", "c"); p.Save(); p = new Post(blog, "d", "e", "c"); p.Save(); p = new Post(blog, "f", "g", "h"); p.Save(); }
public virtual void InitFixture() { var source = ActiveRecordSectionHandler.Instance; ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize(Assembly.Load("TestSiteARSupport"), source); }
public void InitDB(string FileDB) { ActiveRecordStarter.ResetInitializationFlag(); IDictionary <string, string> properties = new Dictionary <string, string> { { "connection.driver_class", "NHibernate.Driver.SQLite20Driver" }, { "dialect", "NHibernate.Dialect.SQLiteDialect" }, { "connection.provider", "NHibernate.Connection.DriverConnectionProvider" }, { "connection.connection_string", "Data Source=" + FileDB + ";locked=true" }, { "proxyfactory.factory_class", @"NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle" } }; try { InPlaceConfigurationSource source = new InPlaceConfigurationSource(); source.Add(typeof(ActiveRecordBase), properties); ActiveRecordStarter.Initialize(source, TestRequest_DBHelper.GetTypes()); } catch (Exception e1) { MessageBox.Show(e1.ToString()); } }
/// <summary> /// Initialize Active Record, and initialize the container. /// If <paramref name="rhinoContainerConfig"/> is <see langword="null" /> or <see cref="string.Empty">string.Empty</see> /// a <see cref="RhinoContainer">RhinoContainer</see> will not be initialized. /// </summary> /// <param name="rhinoContainerConfig">The configuration file to initialize a <see cref="RhinoContainer">RhinoContainer</see> /// or <see langword="null" />.</param> /// <param name="cfg">The configuration to supply to AR</param> /// <param name="assemblies">The assemblies to load for NHibernate mapping files.</param> public void FixtureInitialize(string rhinoContainerConfig, InPlaceConfigurationSource cfg, params Assembly[] assemblies) { if (cfg == null) { throw new ArgumentNullException("cfg"); } IoC.Reset(); ActiveRecordStarter.ResetInitializationFlag(); cfg.Add(typeof(ActiveRecordBase), CreateProperties()); //here we either configure the IUnitOfWorkFactory appropriately (which calls ActiveRecordStarter) //or we configure ActiveRecordStarter ourselves if (!string.IsNullOrEmpty(rhinoContainerConfig)) { if (!IoC.IsInitialized) { IoC.Initialize(new RhinoContainer(rhinoContainerConfig)); } IHandler unitOfWorkFactoryHandler = IoC.Container.Kernel .GetHandler(typeof(IUnitOfWorkFactory)); unitOfWorkFactoryHandler .AddCustomDependencyValue("configurationSource", cfg); unitOfWorkFactoryHandler .AddCustomDependencyValue("assemblies", assemblies); IoC.Resolve <IUnitOfWorkFactory>().Init(); } else { ActiveRecordStarter.Initialize(assemblies, cfg); } }
private void InitializeFramework(ArrayList assemblies) { log.Info("Initializing ActiveRecord Framework"); ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.SessionFactoryHolderCreated += new SessionFactoryHolderDelegate(OnSessionFactoryHolderCreated); try { ConfigurationSourceAdapter adapter = new ConfigurationSourceAdapter(FacilityConfig); if (log.IsDebugEnabled) { log.Debug("Is Debug enabled {0}", adapter.Debug); log.Debug("ThreadScopeInfo {0}", adapter.ThreadScopeInfoImplementation); log.Debug("NamingStrategy {0}", adapter.NamingStrategyImplementation); log.Debug("SessionFactoryHolder {0}", adapter.SessionFactoryHolderImplementation); } ActiveRecordStarter.Initialize( (Assembly[])assemblies.ToArray(typeof(Assembly)), adapter); } finally { ActiveRecordStarter.SessionFactoryHolderCreated -= new SessionFactoryHolderDelegate(OnSessionFactoryHolderCreated); } }
public void TestFixtureSetUp() { var configurationSource = new XmlConfigurationSource("ActiveRecord.cfg.xml"); ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize(typeof(Customer).Assembly, configurationSource); }
public void RootTypeIsNotAbstract() { ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize(GetConfigSource(), typeof(NonAbstractRootType)); }
private void DoInitialization() { if (InitializationAware == null && IoC.IsInitialized) { if (IoC.Container.Kernel.HasComponent(typeof(INHibernateInitializationAware))) { InitializationAware = IoC.ResolveAll <INHibernateInitializationAware>(); } } List <Type> registerdTypes = new List <Type>(); ActiveRecordStarter.SessionFactoryHolderCreated += delegate(ISessionFactoryHolder holder) { holder.OnRootTypeRegistered += delegate(object sender, Type rootType) { registerdTypes.Add(rootType); }; }; ActiveRecordStarter.MappingRegisteredInConfiguration += delegate(ISessionFactoryHolder holder) { if (InitializationAware != null) { foreach (Configuration cfg in holder.GetAllConfigurations()) { foreach (INHibernateInitializationAware initializer in InitializationAware) { initializer.Configured(cfg); } } } }; ActiveRecordStarter.ResetInitializationFlag(); if (InitializationAware != null) { foreach (INHibernateInitializationAware hibernateInitializationAware in InitializationAware) { hibernateInitializationAware.BeforeInitialization(); } } ActiveRecordStarter.Initialize(assemblies, configurationSource); ISessionFactoryHolder sessionFactoryHolder = ActiveRecordMediator.GetSessionFactoryHolder(); if (InitializationAware != null) { foreach (Type type in registerdTypes) { Configuration configuration = sessionFactoryHolder.GetConfiguration(type); ISessionFactory factory = sessionFactoryHolder.GetSessionFactory(type); foreach (INHibernateInitializationAware initializer in InitializationAware) { initializer.Initialized(configuration, factory); } } } }
public new void Init() { ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize(GetConfigSource(), typeof(GenericNullableModel), typeof(SurveyAssociation)); Recreate(); }
public static void CarregarEntidades() { List <Assembly> assemblies = new List <Assembly>(); assemblies.Add(Assembly.Load("Licitar.Business")); ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize(assemblies.ToArray(), Conexao.GetConfigSource()); }
public void Initialize() { List <Assembly> assemblies = new List <Assembly>(); assemblies.Add(Assembly.Load(_ActiveRecordClassesAssemblyName)); ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize(assemblies.ToArray(), _GetConfigSource()); }
private void switchDB() { ActiveRecordStarter.ResetInitializationFlag(); // 获取数据库连接配置 IConfigurationSource source = new Castle.ActiveRecord.Framework.Config.XmlConfigurationSource("../../TestCases/ActiveRecordConfig_1.xml"); // 载入程序集中所有 ActiveRecord 类。 ActiveRecordStarter.Initialize(source, typeof(ActiveRecordBase), typeof(TestBase1), typeof(TestBase2), typeof(Question), typeof(UserData), typeof(User1), typeof(User2)); }
public void InitialiseAR() { ActiveRecordStarter.ResetInitializationFlag(); IConfigurationSource source = new XmlConfigurationSource("ActiveRecordConfig.xml"); Assembly asm1 = Assembly.Load("Com.GainWinSoft.ERP.Entity"); ActiveRecordStarter.Initialize( asm1, source); }
public void VerificationOffWithMissingFieldError() { // Create the tables first XmlConfigurationSource config = (XmlConfigurationSource)GetConfigSource(); config.VerifyModelsAgainstDBSchema = false; ActiveRecordStarter.Initialize(config, typeof(ModelClassUsedToCreateTableForClassWithBrokenField)); Recreate(); // Then test Broken field ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize(config, typeof(ModelClassWithBrokenField)); }
public void SaveWithBadTableSchemaThrowsException() { ActiveRecordStarter.Initialize(GetConfigSource(), typeof(ModelClassUsedToCreateTableForClassWithBrokenField)); Recreate(); ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize(GetConfigSource(), typeof(ModelClassWithBrokenField)); ModelClassWithBrokenField brokenClass = new ModelClassWithBrokenField(); brokenClass.Broken = true; brokenClass.Save(); }
public void VerificationOnWithNoError() { // Create the tables first XmlConfigurationSource config = (XmlConfigurationSource)GetConfigSource(); config.VerifyModelsAgainstDBSchema = false; ActiveRecordStarter.Initialize(config, typeof(Blog), typeof(Post)); Recreate(); // Then run again with verification config.VerifyModelsAgainstDBSchema = true; ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize(config, typeof(Blog), typeof(Post)); }
public void WillUseRegisteredAssembliesToLookForRawMappingXmlEvenIfThereAreNoActiveRecordTypesInThatAssembly() { ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize( typeof(RegisterNHibernateClassMapping).Assembly, GetConfigSource() ); ISessionFactory factory = ActiveRecordMediator.GetSessionFactoryHolder() .GetSessionFactory(typeof(ActiveRecordBase)); IClassMetadata metadata = factory .GetClassMetadata(typeof(NHibernateClass)); Assert.IsNotNull(metadata); }
public void Finalizar() { if (Convert.ToBoolean(ConfigurationManager.AppSettings["LimparDadosAposGeracao"])) { DbCommand cmdExclusaoRegistros = UndTrabalho.DBArquivoSpedFiscal.GetSqlStringCommand( SqlExpressionsFiscalRepository.GetDeleteRegistrosGerados()); UndTrabalho.AddParameterToCommand(cmdExclusaoRegistros, "@NR_ARQUIVO", DbType.Int32, this._NumeroIdentificacaoArquivo); UndTrabalho.DBArquivoSpedFiscal.ExecuteNonQuery(cmdExclusaoRegistros); } ActiveRecordStarter.ResetInitializationFlag(); this._informacoesArquivo.CaminhoArquivo = UndTrabalho.CaminhoArquivo; this._informacoesArquivo.HorarioTerminoGeracaoArquivo = DateTime.Now; this._informacoesArquivo.Save(); }
public void AbstractClassTableName() { ActiveRecordStarter.ResetInitializationFlag(); Assert.IsTrue(NHibernate.Cfg.Environment.UseReflectionOptimizer); ActiveRecordStarter.Initialize(GetConfigSource(), typeof(AbstractClass<>), typeof(ConcreteClass)); Assert.IsFalse(NHibernate.Cfg.Environment.UseReflectionOptimizer); Recreate(); ConcreteClass c = new ConcreteClass(); c.Save(); Assert.IsTrue(ConcreteClass.FindAll().Length == 1); }
public new void Init() { ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize(GetConfigSource(), typeof(Blog), typeof(Post)); Recreate(); var blog = new Blog() { Author = "Horatio", Name = "Murmurs" }; blog.Save(); var post = new Post(blog, "To Be Or Not To Be", "Nonsense", "monologues"); post.Save(); }
public new void Init() { ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize(GetConfigSource(), typeof(ProductWithGuid)); Recreate(); var product1 = new ProductWithGuid { Key = Key1 }; product1.Save(); var product2 = new ProductWithGuid { Key = Key2 }; product2.Save(); }
public void Setup() { ActiveRecordStarter.ResetInitializationFlag(); ActiveRecordStarter.Initialize(GetConfigSource(), typeof(Blog), typeof(Post), typeof(Company), typeof(Award), typeof(Employee), typeof(Person)); Recreate(); Post.DeleteAll(); Blog.DeleteAll(); Company.DeleteAll(); Award.DeleteAll(); Employee.DeleteAll(); }
/// <summary> /// The common test setup code. To activate it in a specific test framework, /// it must be called from a framework-specific setup-Method. /// </summary> public virtual void SetUp() { ActiveRecordStarter.ResetInitializationFlag(); Dictionary <string, string> properties = new Dictionary <string, string>(); properties.Add("connection.driver_class", "NHibernate.Driver.SQLite20Driver"); properties.Add("dialect", "NHibernate.Dialect.SQLiteDialect"); properties.Add("connection.provider", typeof(InMemoryConnectionProvider).AssemblyQualifiedName); properties.Add("connection.connection_string", "Data Source=:memory:;Version=3;New=True"); properties.Add("proxyfactory.factory_class", "Castle.ActiveRecord.ByteCode.ProxyFactoryFactory, Castle.ActiveRecord"); foreach (var p in GetProperties()) { properties[p.Key] = p.Value; } var config = new InPlaceConfigurationSource(); config.Add(typeof(ActiveRecordBase), properties); foreach (var type in GetAdditionalBaseClasses()) { config.Add(type, properties); } Configure(config); var types = GetTypes(); var assemblies = GetAssemblies(); if (types == null) { types = new Type[0]; } if (assemblies == null) { assemblies = new Assembly[0]; } ActiveRecordStarter.Initialize(assemblies, config, types); ActiveRecordStarter.CreateSchema(); }
private void PerformActiveRecordInitialization <T>() { ActiveRecordStarter.ResetInitializationFlag(); var src = new Castle.ActiveRecord.Framework.Config.InPlaceConfigurationSource(); var properties = new Dictionary <string, string>(); // < add key = "hibernate.connection.provider" value = "NHibernate.Connection.DriverConnectionProvider" /> properties.Add("connection.driver_class", "NHibernate.Driver.SqlClientDriver"); properties.Add("dialect", "NHibernate.Dialect.MsSql2008Dialect"); properties.Add("connection.provider", "NHibernate.Connection.DriverConnectionProvider"); properties.Add("proxyfactory.factory_class", "NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle"); properties.Add("connection.connection_string", "UID=felix;Password=rollhide;Initial Catalog=ENSRC020419DEVAD17;Data Source=172.21.5.3,1435"); properties.Add("show_sql", "true"); properties.Add("query.startup_check", "false"); src.Add(typeof(ActiveRecordBase), properties); Type[] types = GetAllTypes().ToArray(); ActiveRecordStarter.Initialize(src, types); // var itm = src.GetConfiguration(typeof(ActiveRecordBase)); }
private void btnConnect_Click(object sender, EventArgs e) { ActiveRecordStarter.ResetInitializationFlag(); IDictionary <string, string> properties = new Dictionary <string, string> { { "connection.driver_class", "NHibernate.Driver.SqlClientDriver" }, { "dialect", "NHibernate.Dialect.MsSql2008Dialect" }, { "connection.provider", "NHibernate.Connection.DriverConnectionProvider" }, //Catalog Name Table. Как создать БД с помощью метода ActiveRecordStarter.CreateSchema(); //пока выяснить не удалось но CreateSchema() прекрасно добавляет таблицы к БД { "connection.connection_string", "Data Source=PC;Initial Catalog=vvv;Integrated Security=True" }, { "proxyfactory.factory_class", @"NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle" } }; try { InPlaceConfigurationSource source = new InPlaceConfigurationSource(); source.Add(typeof(ActiveRecordBase), properties); ActiveRecordStarter.Initialize(source, MainDBHelper.GetTypes()); ActiveRecordStarter.CreateSchema(); } catch (Exception e1) { MessageBox.Show(e1.ToString()); } }
public virtual void Init() { ActiveRecordStarter.ResetInitializationFlag(); }
/// <summary> /// The common test teardown code. To activate it in a specific test framework, /// it must be called from a framework-specific teardown-Method. /// </summary> public virtual void TearDown() { ActiveRecordStarter.ResetInitializationFlag(); InMemoryConnectionProvider.Restart(); }
public void SetUp() { ActiveRecordStarter.ResetInitializationFlag(); }