剛轉了新公司,以前公司都是用VS+MSSQL作為開發工具的
現在新公司由於數據庫是Oracle,而且新公司比較小規模,開發團隊也沒有什么規范
訪問數據庫的方式一直使用ADO.net的DataTable、DataAdapter、DataConnect的方式
沒有用其他的ORM框架,就自己研究了一下Oracle+EF的開發
一開始上網就直接找到了Oracle官網的ODP.net
Oracle Data Access Components (ODAC) for Windows Downloads
32-bit ODAC with Oracle Developer Tools for Visual Studio Downloads
32-bit ODAC Xcopy and NuGet Downloads
64-bit ODAC Downloads - Oracle Universal Installer and Xcopy
Oracle Developer Tools for Visual Studio 2015 - MSI Installer
Oracle Developer Tools for Visual Studio 2013 - MSI Installer
看到以上的選項,我看都不看,就直接下載了
Oracle Developer Tools for Visual Studio 2015 - MSI Installer
然后就是建立項目,選擇需要訪問的關系表(我本機有同事幫忙安裝了Oracle客戶端,設置了連接Oracle的TNS),建立實體,一切都看似很順利
到了最后執行代碼的時候,卻出現提示錯誤:指定的存儲區提供程序在配置中找不到,或者無效。
網上找了一堆有關這個錯誤的Blog,基本都是指向了:GAC安裝錯誤(版本、x86x64問題等)
然后就不停嘗試安裝
64-bit ODAC Downloads - Oracle Universal Installer and Xcopy
什么gacutil查看都得出了Blog里面正確的結果,但是還是提示這個錯誤
最后,我就直接新建了一個虛擬機(Win7x64),安裝vs2015(update1)社區版,然后就是安裝不同的odp.net進行嘗試
驚喜出現了,我直接安裝
32-bit ODAC with Oracle Developer Tools for Visual Studio Downloads
里面的ODTwithODAC121024.zip
Oracle官網上面寫得很清晰,這個安裝包包括了:
Oracle Developer Tools for Visual Studio 12.1.0.2.4
Oracle Data Provider for .NET 4 12.1.0.2.0
Oracle Data Provider for .NET 2.0 12.1.0.2.0
Oracle Providers for ASP.NET 4 12.1.0.2.0
Oracle Providers for ASP.NET 2.0 12.1.0.2.0
Oracle Database Extensions for .NET 4 12.1.0.2.0 -- for upgrade only
Oracle Database Extensions for .NET 2.0 12.1.0.2.0 -- for upgrade only
Oracle Provider for OLE DB 12.1.0.2.0
Oracle Services for Microsoft Transaction Server 12.1.0.2.0
Oracle ODBC Driver 12.1.0.2.0
Oracle SQL*Plus 12.1.0.2.0
Oracle Instant Client 12.1.0.2.0
其實我走的彎路,主要應該是因為我的機器有人幫我安裝了Oracle客戶端
如果有像我一樣,什么都沒有的情況下,其實直接下載這個【32-bit ODAC with Oracle Developer Tools for Visual Studio Downloads】就可以了
里面包含了最重要的兩樣:
1、Oracle Instant Client 12.1.0.2.0
2、Oracle Data Provider for .NET
在安裝這個工具的時候,會將所有的EF所需要的環境都設置好
我在自己的電腦上,重新安裝一次也是不行,所以我最終也沒有找到怎么解決這個問題的辦法,希望最終能解決這個問題的朋友,能把方法寫成Blog,然后把Blog的地址發一下給我參考,我郵箱:489427256 @ qq.com
