2011-07-05 45 views
1

我想知道是否有人知道ORM for .NET與Oracle兼容。參考資料關於Oracle的.NET ORM

這裏有一個問題,我想不必在我的數據抽象層中添加對任何第三方庫的引用。

我用過Telerik的OpenAccess ORM,它工作的很棒;除了我必須在我的項目中添加對Telerik的DLL的引用。

由於我只是從Oracle調用存儲過程,因此我不需要現代(儘管很重)的ORM附帶的增強型LINQ功能。

我或多或少地尋找一個代碼生成器,它將檢查Oracle並允許我選擇要使用的軟件包/過程,然後使用Oracle.DataAccess.Client調用過程來生成方法。

我目前手動創建這些方法,但跟蹤變量名稱和包名變得越來越痛苦。

有誰知道任何可能有用的東西嗎?

謝謝!

傑弗裏·凱文撬

+3

爲什麼你不能添加引用?你是否試圖讓它比需要的更難? –

+0

因爲真實世界的應用程序不應該有我們無法控制的程序集引用。我想生成訪問方法,然後有能力在需要時更改源代碼。在PL/SQL中編寫代碼來生成程序包訪問代碼並不難,但是,我問是否已經存在一些東西。此外,添加對ORM工具的引用會降低性能,因爲所有代碼/映射都發生在它內部,然後最終發送到Oracle.DataAccess.Client。我想消除中間人。 –

+1

不知道你在哪裏得到這種印象 - 真實世界的應用程序往往有很多引用無法控制,從.NET BCL開始。至於表現方面,我敢打賭,一般來說,這些傢伙會寫出優秀的ORM。 –

回答

0

如果你不想動態添加參考,使用反射和加載組件和調用的方法和參數傳遞給它。這將是更多的PITA和代碼將很難閱讀,管理或調試

+0

我不確定你的回答是否解決了我的問題。我無法對外部Oracle數據庫使用反射。我正在討論通過查詢Oracle的user_arguments視圖來生成訪問過程的工具。 –