[推薦]萬用的資料庫Connector
在ADO.Net中,連結不同的db provider,
必須使用不同的物件類別,如sqlconnection, mysqlconnection等等
倘若某專案突然要換資料庫,相信基層元件或邏輯元件都會改到手軟
除了改名外,一些彼此不相容的問題也可能產生。
我以前就想,是否可以自己創造一個Interface(介面)
來連結不同的db provider,例如oracle/db2/mysql...
不過,對於元件建構很肉腳的我,會變成一種method要寫n種
想想也沒差,實驗失敗!!
有個外國人很厲害,他發現不同的db provider其實都遵守ado.net命名法
因此自己就寫了一些介面及繼承原先的,來接收這些不同的provider傳回的類別
所有provider的定義就放在一個xml檔內,只需要把provider的dll放入bin/中
就可以run了,這剛好是我所想像的最佳狀況。
最值得喝采的,它是免費且open source,感動再感動!!
它叫做「Generic ADO.net DB Access」,
官方網址是:http://www.maxvirtual.com/Default.aspx
不像UniDirect .NET Data Provider死要錢,寫不好又想全包 = =+
自己看了它的介面原始碼,嗯~ 不太會,還是用它的binary好了! :p
發現它持續有在更新,
我連忙用vs.net 2005 beta1測試sqlsrv及mysql,果然都ok!
這一兩句話也讓我測了很久,因為站上只有呼叫的sample,沒有如何發佈的說明
讓我測了n小時,damn it!! 發掘新東西就是這樣,累人!!
言歸正傳,
我覺得這樣的通吃很好,雖然我有點擔心,
怕dataset或rich controls不吃它所創的類別,
不過一般我們只用到資料維護而已,真發生那狀況,自行再建connection即可
它還是值得的。
--
You're recommended to vist C_Sharp in PTT.
We are the C#, resistance is futile.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.119.183.211
討論串 (同標題文章)
C_Sharp 近期熱門文章
PTT數位生活區 即時熱門文章
18
58