1、如何配置数据连接,ActiveRecord初始化的几种方式!

本文提供了针对多种数据库(如MSSQLServer、Oracle、MySQL等)的配置示例,并介绍了使用ActiveRecord进行实体类初始化的不同方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

内容属于标准的一些配置,不属于原创文章,只是把一些资料收集,整理在一起而已。

常见的几种数据库配置方案

Castle网站为我们提供的几个常见的配置示例,有的文章说,如果应用于Web 需要在<activerecord>节点配置 <activerecord isWeb="true">  其实不配也没有关系
1.MS SQLServer

<activerecord>

    
<config>

        
<add key="hibernate.connection.driver_class" value="NHibernate.Driver.SqlClientDriver" />

        
<add key="hibernate.dialect" value="NHibernate.Dialect.MsSql2000Dialect" />

        
<add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" />

        
<add key="hibernate.connection.connection_string" value="Data Source=.;Initial Catalog=test;UID=sa;Password=sa" />

    
</config>

</activerecord>


2.Oracle

<activerecord>

    
<config>

        
<add key="hibernate.connection.driver_class" value="NHibernate.Driver.OracleClientDriver" />

        
<add key="hibernate.dialect" value="NHibernate.Dialect.OracleDialect" />

        
<add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" />

        
<add key="hibernate.connection.connection_string" value="Data Source=dm;User ID=dm;Password=dm;" />

    
</config>

</activerecord>


3.MySQL

 

<activerecord>

    
<config>

        
<add key="hibernate.connection.driver_class" value="NHibernate.Driver.MySqlDataDriver" />

        
<add key="hibernate.dialect" value="NHibernate.Dialect.MySQLDialect" />

        
<add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" />

        
<add key="hibernate.connection.connection_string" value="Database=test;Data Source=someip;User Id=blah;Password=blah" />

    
</config>

</activerecord>

 

4.Firebird

 

<activerecord>

    
<config>

        
<add key="hibernate.connection.driver_class" value="NHibernate.Driver.FirebirdDriver" />

        
<add key="hibernate.dialect" value="NHibernate.Dialect.FirebirdDialect" />

        
<add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" />

        
<add key="hibernate.connection.connection_string" value="Server=localhost;Database=d:\db.fdb;User=SYSDBA;password=masterkey;ServerType=1;Pooling=false" />

        
<add key="hibernate.query.substitutions" value="true 1, false 0" />

    
</config>

</activerecord>

 

5.PostgreSQL

<activerecord>

    
<config>

        
<add key="hibernate.connection.driver_class" value="NHibernate.Driver.NpgsqlDriver" />

        
<add key="hibernate.dialect" value="NHibernate.Dialect.PostgreSQLDialect" />

        
<add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" />

        
<add key="hibernate.connection.connection_string" value="Server=localhost;initial catalog=nhibernate;User ID=nhibernate;Password=nhibernate;" />

    
</config>

</activerecord>
 
 
 
关于初始化的几种方式:
 
1.初始化单个实体类
ActiveRecordStarter.Initialize( source, typeof(User) );

2.初始化多个实体类
    2.1.   ActiveRecordStarter.Initialize( source, typeof(Order),typeof(Product));
    2.2.   IConfigurationSource source = System.Configuration.ConfigurationManager.GetSection("activerecord") as     IConfigurationSource;
Type[] paramTypes = new Type[3];
paramTypes[0] = typeof(User1);
paramTypes[1] = typeof(Post);
paramTypes[2] = typeof(Blog);
ActiveRecordStarter.Initialize(source, paramTypes);

   3.   Assembly assembly = Assembly.Load("ARTest");
   ActiveRecordStarter.Initialize(assembly, source);

   4.    // 获取数据库连接配置
XmlConfigurationSource source = new XmlConfigurationSource(@"Config\ActiveRecord.xml");
      
// 载入程序集中所有 ActiveRecord 类。
ActiveRecordStarter.Initialize(Assembly.GetExecutingAssembly(), source);

   这样可以一次初始化所有的程序集里面的类。

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值