c# Castle.ActiveRecord ORM框架升級(.net2.0至.net4.0)

dll相關(guān)

dll版本信息

NHibernate相關(guān)的用3.1.0.4000版本
Castle.ActiveRecord相關(guān)用3.0.0.0版本
Castle.Windsor相關(guān)用2.5.2.0版本

關(guān)于合并dll

Castle.Core.dll(2.5.2.0)包含Castle.DynamicProxy.dll洼冻、Castle.DynamicProxy2.dll(根據(jù)官方說明在版本2.5之后原先獨立的castle.dynamicproxy.dll)
Castle.Windsor.dll(2.5.2.0)包含Castle.MicroKernel.dll

需要更改的using

using NHibernate.Expression;換為using NHibernate.Criterion;

錯誤處理

A00
錯誤:初始化Castle.ActiveRecord的時候“Castle.ActiveRecord.Framework.ActiveRecordException”
處理:可能是NHibernate版本的問題畜份,如果在配置文件可以嘗試如下更改

<add key="hibernate.connection.connection_string" value="xxx" /><!--,NHibernate2.0以后淘正,已經(jīng)簡化了-->
 <add key="connection.connection_string" value="xxx" /><!--去掉'hibernate'-->

A01
錯誤:提示“XXXXXXXXXXXXXXXXXXXX”的類型初始值設(shè)定項引發(fā)異常。(建立容器類)
處理:考慮版本兼容問題臼闻,嘗試換Castle.Windsor/Castle.MicroKernel dll版本
A02
錯誤:Unable to load type ' NHibernate.Bytecode.DefaultProxyFactoryFactory,NHibernate.ByteCode.Castle' during configuration of proxy factory class. Possible causes are: - The NHibernate.Bytecode provider assembly was not deployed. - The typeName used to initialize the 'proxyfactory.factory_class' property of the session-factory section is not well formed. Solution: Confirm that your deployment folder contains one of the following assemblies: NHibernate.ByteCode.LinFu.dll NHibernate.ByteCode.Castle.dll
處理:加NHibernate.ByteCode.LinFu.dll鸿吆、NHibernate.ByteCode.Castle.dll,加<add key="proxyfactory.factory_class" value="NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle" />
web.config

<?xml version="1.0"?>
<configuration>
    <activerecord>
        <config> 
            <add key="connection.driver_class" value="NHibernate.Driver.OracleClientDriver" />
            <add key="connection.isolation" value="ReadCommitted" />
            <add key="dialect" value="NHibernate.Dialect.Oracle9iDialect" />
            <add key="connection.connection_string" value="data source=localhost:6697/orcl;user=C##CS_DB;password=123456;" />
            <add key="proxyfactory.factory_class" value="NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle" />
        </config>
    </activerecord>
</configuration>

A03
錯誤:

ERROR - Unable to load type 'NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle' during configuration of proxy factory class.
Possible causes are:
- The NHibernate.Bytecode provider assembly was not deployed.
- The typeName used to initialize the 'proxyfactory.factory_class' property of the session-factory section is not well formed.

Solution:
Confirm that your deployment folder contains one of the following assemblies:
NHibernate.ByteCode.LinFu.dll
NHibernate.ByteCode.Castle.dll
Path And Query: /handler/SystemHandler.ashx
Request Type: POST
Http Referrer: /
User Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko
IP Address: ::1
NHibernate.Bytecode.UnableToLoadProxyFactoryFactoryException: Unable to load type 'NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle' during configuration of proxy factory class.
Possible causes are:
- The NHibernate.Bytecode provider assembly was not deployed.
- The typeName used to initialize the 'proxyfactory.factory_class' property of the session-factory section is not well formed.
Solution:
Confirm that your deployment folder contains one of the following assemblies:
NHibernate.ByteCode.LinFu.dll
NHibernate.ByteCode.Castle.dll --->
System.IO.FileLoadException: 未能加載文件或程序集“NHibernate, Version=3.1.0.4000, Culture=neutral, PublicKeyToken=null”或它的某一個依賴項述呐。找到的程序集清單定義與程序集引用不匹配惩淳。 (異常來自 HRESULT:0x80131040)  

處理:考慮引用版本是不是你下的那個版本,可以嘗試刪掉NHibernate相關(guān)引用再重新應(yīng)用(ps:我是因為下的NHibernate-3.1.0.GA-src自己編譯的dll乓搬,過了一天以后開始報錯思犁,換成NHibernate-3.1.0.GA-bin里面的dll后就沒得問題了)
A04
錯誤:“((NHibernate.Impl.SessionImpl)session).Connection”引發(fā)了類型“System.Data.OracleClient.OracleException”的異常
詳細描述:我有很多個表,id都是用的獲取序列號进肯,就其中一個表調(diào)用下面這個代碼時報上面那個錯誤(session的Connection獲取不了)激蹲,其它時候調(diào)用都沒問題。
處理:尚未解決

所用dll文件下載

上述dll下載于:
1.https://sourceforge.net/projects/castleproject/files/
2.https://master.dl.sourceforge.net/project/nhibernate/NHibernate/3.1.0.GA/NHibernate-3.1.0.GA-bin.zip
3.http://logging.apache.org/log4net/download_log4net.cgi

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末江掩,一起剝皮案震驚了整個濱河市学辱,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌环形,老刑警劉巖策泣,帶你破解...
    沈念sama閱讀 222,183評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異抬吟,居然都是意外死亡萨咕,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評論 3 399
  • 文/潘曉璐 我一進店門火本,熙熙樓的掌柜王于貴愁眉苦臉地迎上來任洞,“玉大人,你說我怎么就攤上這事发侵〗惶停” “怎么了?”我有些...
    開封第一講書人閱讀 168,766評論 0 361
  • 文/不壞的土叔 我叫張陵刃鳄,是天一觀的道長盅弛。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么挪鹏? 我笑而不...
    開封第一講書人閱讀 59,854評論 1 299
  • 正文 為了忘掉前任见秽,我火速辦了婚禮,結(jié)果婚禮上讨盒,老公的妹妹穿的比我還像新娘解取。我一直安慰自己,他們只是感情好返顺,可當我...
    茶點故事閱讀 68,871評論 6 398
  • 文/花漫 我一把揭開白布禀苦。 她就那樣靜靜地躺著,像睡著了一般遂鹊。 火紅的嫁衣襯著肌膚如雪振乏。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,457評論 1 311
  • 那天秉扑,我揣著相機與錄音慧邮,去河邊找鬼。 笑死舟陆,一個胖子當著我的面吹牛误澳,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播秦躯,決...
    沈念sama閱讀 40,999評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼脓匿,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了宦赠?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,914評論 0 277
  • 序言:老撾萬榮一對情侶失蹤米母,失蹤者是張志新(化名)和其女友劉穎勾扭,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體铁瞒,經(jīng)...
    沈念sama閱讀 46,465評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡妙色,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,543評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了慧耍。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片身辨。...
    茶點故事閱讀 40,675評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖芍碧,靈堂內(nèi)的尸體忽然破棺而出煌珊,到底是詐尸還是另有隱情,我是刑警寧澤泌豆,帶...
    沈念sama閱讀 36,354評論 5 351
  • 正文 年R本政府宣布定庵,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏蔬浙。R本人自食惡果不足惜猪落,卻給世界環(huán)境...
    茶點故事閱讀 42,029評論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望畴博。 院中可真熱鬧笨忌,春花似錦、人聲如沸俱病。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽庶艾。三九已至袁余,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間咱揍,已是汗流浹背颖榜。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留煤裙,地道東北人掩完。 一個月前我還...
    沈念sama閱讀 49,091評論 3 378
  • 正文 我出身青樓,卻偏偏與公主長得像硼砰,于是被迫代替她去往敵國和親且蓬。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,685評論 2 360