首页 > 代码库 > NHibernate数据库配置文件介绍及多数据库连接简介

NHibernate数据库配置文件介绍及多数据库连接简介

  1. 编写配置文件

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-configuration  xmlns="urn:nhibernate-configuration-2.2" >
  <session-factory name="NJ12369.SendInfo">
    <!-- properties -->
    <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
    <property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
    <property name="connection.connection_string">server=192.168.10.127;uid=;pwd=sa;database=b</property>

    <property name="show_sql">false</property>
    <property name="dialect">NHibernate.Dialect.MsSql2000Dialect</property>
    <property name="use_outer_join">true</property>
    <property name="query.substitutions">true 1, false 0, yes ‘Y‘, no ‘N‘</property>

    <!-- mapping files -->
    <mapping assembly="*****" />
  </session-factory>
</hibernate-configuration>

  1. 获取文件所在目录

 HttpContext.Current.Server.MapPath("~/fileName.config");

  1. 3.   读取文件信息

 Configuration cfg = new Configuration().Configure(fileName);

  1. 添加多个数据库连接

pulic static class ConfigurationFactory

{  

    private static Hashtable cfgs = new Hashtable();

    static ConfigurationFactory(){

       foreach( string path in GetPaths() )

       {

             Configuration cfg = new Configuration();

             cfg.Configure(new XmlTextReader(new StreamReader( path ));

             cfgs.Add( GetName(path), cfg );

       }

    }

   

    public static Configuration GetCfg( string cfgName ){

        return cfgs[ cfgName ] as Configuration;

    }

   

    public static string[] GetPaths(){

         /*这个按你的实际情况来写*/

    }

    public static string GetName(string path ){

         /*这个按你的实际情况来写*/

    }

}

 

注意:

  1. 如果多个数据库连接需要去掉配置文件中的

在增加的hiberante.cfg.xml文件里去掉<mapping assembly="*****" />

 

数据库参数配置请参照:

NHibernate各种数据库连接参数文件配置方法说明

网址:http://blog.csdn.net/hsg77/article/details/23463733

 

NHibernate数据库配置文件介绍及多数据库连接简介