iBATIS.NET配置六點總結(jié)
前兩天想使用iBATIS.NET做一個項目,其實本來不必這么復(fù)雜,因為項目時間很短,可就是不能逃過我的好奇心,偏就邊學(xué)邊用你了。
上到ibatis網(wǎng)站轉(zhuǎn)了轉(zhuǎn),看了看,下載了DataMapper 1.6.1 ,DataAccess 1.9.1 (下載地址
http://ibatis.apache.org/dotnetdownloads.cgi),感覺這個框架確實很好很強大,也很美很復(fù)雜,好在有網(wǎng)上那么多朋友寫了教程,隨即就找兩篇配置一下,感覺也不會有多難。
一上手iBATIS.NET就傻了,足足花費了一天配置環(huán)境,直汗,在次把這次配置我遇到的問題和注意事項寫下來,也好避免有朋友犯類似雷人的錯誤.
iBATIS.NET配置總結(jié)一.一定要在官方網(wǎng)站看一下ibatis.net的兩個文檔
DataMapper 1.6.1文檔:http://ibatis.apache.org/docs/dotnet/datamapper/index.html
DataAccess 1.9.1文檔:http://ibatis.apache.org/docs/dotnet/dataaccess/index.html
里面基本上有很多關(guān)鍵的問題都說的很清楚。
iBATIS.NET配置總結(jié)二.如果你下載了NPetShop或NPetShop2代碼,或者參考一些朋友先前的配置文件,注意這些項目或者文章使用的配置文件很可能已經(jīng)陳舊,不適用于ibatis.net 1.3以上版本了。一定按照官方的文檔中的配置方式配置。切記不可運行的一切的根源可能不在于你的代碼,而在于配置文件沒有配置好。尤其要注意每個配置文件的頭部信息,特別是xmlns和xmlns:xsi,切記對照官方文檔檢查清楚。
iBATIS.NET配置總結(jié)三.一定要正確的引用Castle.DynamicProxy類庫,這個是關(guān)鍵的關(guān)鍵,在官方文檔中有詳細(xì)的描述。
iBATIS.NET配置總結(jié)四.當(dāng)碰到這個出錯提示ibatis.net This SQL map does not contain a MappedStatement named往往是沒有加載SqlMap.config所導(dǎo)致,最簡單的驗證方法是將SqlMap.config中
- ﹤sqlMaps﹥
- ﹤sqlMap url="E:\Projet\NPetshop\Source\NPetshop.Web\Maps\Category.xml"/﹥
- ﹤/sqlMaps﹥
URL的配置改成一個不存在的.xml文件,這時啟動項目后肯定報錯找不到文件。
iBATIS.NET配置總結(jié)五.如果報System.NullReferenceException: 未將對象引用設(shè)置到對象的實例的錯誤,即:
行 35: DomDaoManagerBuilder builder = new DomDaoManagerBuilder();
行 36: builder.ConfigureAndWatch("dao.config", handler);
一般都是沒有正確的引用Castle.DynamicProxy類庫。
iBATIS.NET配置總結(jié)六.最佳參看的示例在http://www.cnblogs.com/anderslly/archive/2007/08/07/npetshopsourcecode.html感謝作者,重寫了NPetShop的示例。
iBATIS.NET配置的總結(jié)相關(guān)情況就介紹到這里,希望通過歸納使你在iBATIS.NET配置學(xué)習(xí)過程中有所提高。
【編輯推薦】