NHibernate配置及對映檔案

2021-08-22 19:50:50 字數 3536 閱讀 4544

配置nhibernate有三種常見的配置方法。

<?

xml version="1.0" encoding="utf-8"

?>

<

configuration

>

<

configsections

>

<

section

name

="hibernate-configuration"

type

="nhibernate.cfg.configurationsectionhandler, nhibernate"

/>

configsections

>

<

hibernate-configuration

xmlns

="urn:nhibernate-configuration-2.2"

>

<

session-factory

>

<

property

name

="dialect"

>

nhibernate.dialect.mssql2005dialect

property

>

<

property

name

="connection.provider"

>

nhibernate.connection.driverconnectionprovider

property

>

<

property

name

="connection.connection_string"

>

server=tlsz207/sqlexpress;initial catalog=test;integrated security=true

property

>

session-factory

>

hibernate-configuration

>

<

system

.web

>

system.web

>

configuration

>

則需要這樣例項化configuration物件。

nhibernate.cfg.configuration cfg = new nhibernate.cfg.configuration();

2:hibernate.cfg.xml

建立名為hibernate.cfg.xml的檔案。例項化configuration config = new configuration().configure();這樣nhibernate將會在目錄下尋找hibernate.cfg.xml的配置檔案。

hibernate.cfg.xml的格式

<?

xml version="1.0" encoding="utf-8"

?>

<

hibernate-configuration

xmlns

="urn:nhibernate-configuration-2.0"

>

<

session-factory

name

="mysessionfactory"

>

<

property

name

="dialect"

>

nhibernate.dialect.mssql2005dialect

property

>

<

property

name

="connection.provider"

>

nhibernate.connection.driverconnectionprovider

property

>

<

property

name

="connection.connection_string"

>

server=tlsz207/sqlexpress;initial catalog=test;integrated security=true

property

>

session-factory

>

hibernate-configuration

>

指明配置檔案

configuration config = new configuration().configure(configfilename);

這種配置方法將查詢指定的hibernate標準配置檔案,可以是絕對路徑或者相對路徑。還可以通過編碼的方式來新增配置資訊:

idictionary props = new hashtable();

props[「dialect」] = "nhibernate.dialect.mssql2005dialect";

...

configuration cfg = new configuration();

cfg.properties = props;

對映檔案:

<?

xml version="1.0" encoding="utf-8"

?>

<

xmlns

namespace

="test"

assembly

="test"

>

<

class

name

="test.cat,test"

table

="cat"

>

<

id name

="catid"

>

<

column

name

="catid"

sql-type

="char(32)"

not-null

="true"

/>

<

generator

class

="uuid.hex"

/>

id>

<

property

name

="name"

>

<

column

name

="name"

length

="16"

not-null

="true"

/>

property

>

<

property

name

="***"

/>

<

property

name

="weight"

/>

class

>

>

NHibernate 關聯對映

nhibernate 體系結構 nhibernate isessionfactory配置 nhibernate 持久化類 persistent classes nhibernate 集合類 collections 對映 單向關聯是最常用的也是最難正確使用的。在本文中會逐個經歷規範的案例,從單向對映開...

NHibernate配置和對映檔案的智慧型提示

在編輯nhibernate配置檔案和對映檔案時,總是不能獲得智慧型提示功能。而且編譯的時候,還會出現一大堆警告。查了一下文件,把這個問題解決了。我們需要先到c program files nhibernate src src nhibernate這個目錄下找到以下三個檔案 nhibernate co...

NHibernate錯誤集錦及配置技巧

1 你得注意你的 hbm.xml配置檔中nhibernate的版本號.2.2 此處的2.2代表了nhibernate的版本號,必須與你安裝的nhibernate的產品版本號相符.2 在你的對照類中,必須注意屬性的型別,不能缺少virtual關鍵字.屬性的型別必須是 public virtual式的....