Deploy dotConnect for Oracle in ASP.NET Web Site Project
最近在測試devart dotConnect for Oracle的LINQ to Oracle,發現應用在ASP.NET Web Site Project時,必須要完成一些部署步驟才能順利在另一台伺服器運作。我整理如下:
- 部署DLL
有幾個選擇 :
1) 在伺服器上執行dotConnect for Oracle安裝程式,選擇Minimal安裝選項。
2) 手動從C:\Program Files\Devart\dotConnect\下將Devart.Data.dll, Devart.Data.Linq.dll, Devart.Data.Linq.Web.dll, Devart.Data.Oracle.dll, Davart.Data.Oracle.Linq.dll, Devart.Data.Oracle.Web.dll複製到目的伺服器Web Application目錄的bin下。(註冊到GAC讓多個Web Application共用亦可) [參考] - IIS7 x64的特別設定
我發現在IIS7 x64下,必須要設定Enable 32-bit Applications才能順利運作,不然會出現Can not find Oracle home錯誤。這與先前提過的Oracle Client on x64問題類似,dotConnect for Oracle有個Direct Access Mode可以甩掉Oracle Client的糾纏,不失為一了百了一勞永逸的好方法。 - 建立授權檔
除了前述DLL的部署外,我們還需要一個App_Licenses.dll提供元件授權資訊,不然你會看到以下錯誤訊息:
License not found. Please view "Licensing" topic in dotConnect for Oracle documentation for details or contact Devart technical support.
關於授權處理,devart提供的說明文件還算詳細,同時也有方便的GUI工具可以協助產生App_Licenses.dll(見以下圖例示範說明)。

圖1-啟用授權工具

圖2-若Web Project還沒有licenses.licx檔,按下Fix就可自動產生

圖3 記得選Rebuild Application,就可自動產生App_Licenses.dll
最後將App_Licenses.dll也複製到bin下,就大功告成囉!