2010-01-26 172 views
1

我正在做一個小項目。我有一個很大的SQL查詢表達式,30多行,我希望在我的項目中使用。這個應用程序需要通過這些查詢提供對數據庫的只讀訪問。我應該使用哪種DAL選擇?

有這麼多的數據層選擇。 nHibernate,實體框架,LINQ to SQL,數據集,Castle ActiveRecord ...其他我無法從頭頂命名。我不想將這個查詢重新編碼到LINQ中,所以我認爲沒有。如果我仍然可以將它複製到查詢編輯器中,或者輕鬆地將它移植到其他框架,我更喜歡它。

這個項目是關於學習一種新技術。爲了獲得有用的技術,我應該使用哪種框架?我永遠不會從這個應用程序更新數據庫。

建議?

+2

我說去爲ADO.NET對象和內聯SQL! – ChaosPandion 2010-01-26 15:12:55

+1

你如何計算SQL查詢中的行數? – dotjoe 2010-01-26 15:15:06

+0

Def使用ADO並將其推入數據集,然後顯示和操作它是一個辛苦。 – 2010-01-26 15:24:27

回答

6

NHibernate爲贏!

+0

我可以使用SQL而不必做NHibernate風格的查詢嗎? – Amy 2010-01-26 16:23:52

+0

是的,你可以,但是一兩個星期到項目中,你會扔掉你所有的SQL,買一個T恤,上面寫着「SQL是爲了你的」 – 2010-01-26 16:32:15

+0

然後你會使用Linq查詢在這個地方... :-) – 2010-01-26 16:44:14

2

如果你沒有太多的查詢需要使用,我會說NHibernate(你可以更容易控制XML上的映射),或者更簡單的ActiveRecord(假設你也創建了自己的數據庫,那麼你不必關心映射)。

否則性能直接使用ADO.NET

0

隨着一個大的查詢表達式,你可以很容易地有多個項目DAL並嘗試了你所提到的每一個。

+0

當然會有其他疑問。 – Amy 2010-01-26 16:25:22

3

SubSonic是好的,整潔的簡單的事情,甚至有一個很好的宣傳標語(和podcast episode)。

+1

+1,即使它沒有與接受的答案相同的Pzazz:p – 2010-01-26 20:52:47