这是一个方言示例:
using System;using System.Collections.Generic;using System.Web;/// /// This class ensures that the tables created in our db are handling unipre properly./// public class NHibernateMySQL5InnoDBDialect : NHibernate.Dialect.MySQL5Dialect{ public override String TableTypeString { get { return " ENGINE=InnoDB DEFAULT CHARSET=utf8"; } }}
它所在的程序集引用了NHibernate.dll
hibernate.cfg.dll(请注意,我这里没有设置’connection.connection_string’属性,这是我的特定设置,通常您在这里会有连接字符串):
<?xml version="1.0" encoding="utf-8"?><!-- This is the ByteFX.Data.dll provider for MySql --><hibernate-configuration xmlns="urn:nhibernate-configuration-2.2" > <session-factory name="NHibernate.Test"> <property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property> <property name="dialect">NHibernateMySQL5InnoDBDialect, Assembly1</property> <property name="proxyfactory.factory_class">NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu</property> </session-factory></hibernate-configuration>
在某些设置中,方言行是
<property name="dialect">Assembly1.NHibernateMySQL5InnoDBDialect, Assembly1</property>
和创建ISessionFactory的代码:
NHibernate.Cfg.Configuration cfg = new NHibernate.Cfg.Configuration();cfg.Configure();cfg.Properties["connection.connection_string"] = ConnectionStringForDatabase();cfg.AddDirectory(PathToMappingsIfYouUseNonStandardDirectory);//not needed if using embedded resourcesreturn cfg.BuildSessionFactory();
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)