1

我有一個帶有短時間表(大約一週左右)的.Net winforms項目。我開始編寫數據訪問層。這不是一項龐大的工作,大約有20個表格,存儲在Sql Server或本地MS Access數據庫中。數據訪問不是我的專業知識,所以我想要一些建議。需要短期時間表項目的.Net數據訪問層的建議

我最後的體驗是使用.Net數據集和數據表,它提供了一個想法,因爲我這樣做了多長時間。我知道,在這一點上數據集已經過時了,有時他們肯定會成爲皇室的痛苦。我確定實體框架,nHibernate,Linq2SQL都可能好多了,我想用最好的工具 - 但是,我只有一個星期。如果學習曲線太大,那麼這可能是不可行的。我是否應該咬緊牙關並堅持我所知道的(數據集),還是有更好的工具可以快速獲取和實施?

+0

.NET的WinForms,ASP,MVC? – 2012-03-29 14:16:04

+0

數據集和數據表幾乎已經過時了嗎?那時我很落後,我每天都在積極開發使用它們。 – David 2012-03-29 14:17:55

+0

@Brad - .Net winforms,我編輯了這個問題。 – Tekito 2012-03-29 14:19:48

回答

1

我剛剛完成使用實體框架(測試版5.1,儘管它可以與4.2+一起使用)在「代碼優先」POCO類中編寫數據層。

這意味着你可以在標準C#類中編寫你的項目實體(除了一些額外的註釋外,比如什麼屬性應該是關鍵),並且你可以獲得非常直接的持久性。 Entity框架創建您的SQL數據庫,設置所有表和關係,以便您可以立即啓動並運行數據訪問層。 要存儲或檢索對象,您需要調用(自動創建的)對象上下文,這感覺就像使用LINQ將對象從實體列表中拉出(實際上它實際上是動態創建SQL並查詢表)。

涉及到一點點配置,但像上面一樣簡單明瞭。

http://blogs.msdn.com/b/adonet/archive/2011/09/28/ef-4-2-code-first-walkthrough.aspx作爲一個偉大的教程

+0

我*暫時*爲此評分爲最佳答案。我最擔心的是學習曲線,但如果EF提供了快速實施的途徑,那麼我認爲這是值得一試的。反正我從來沒有愛過數據集。但是這是暫定的,因爲在一週的最後期限之後,如果一兩天後進展緩慢,那麼我將不得不回到我所知道的水平。 – Tekito 2012-03-29 15:00:08

2

有可用的新工具令人眼花繚亂。所有這些都是非常棒的工具,但是傳統的ADO.NET仍然沒有錯。所有人都在某種程度上使用它。

他們提供了很棒的工具,比如對象關係映射,並且爲我們簡化了一些事情,但是在某些情況下,它們是過度殺傷性的,有時候這個工作的正確工具並不是「酷炫的新事物」,而是嘗試過的真正。

情況下,因爲你沒有時間去學習新的東西,我真的認爲這是最好的去與你所知道的

+0

你說得對,有很多工具 - 當你在緊張的日程安排中時,有點擔心挑選「合適的人」。我至少會給EF一個鏡頭,但你可以證明是正確的,這可能是一個星期的時間太雄心勃勃了。 – Tekito 2012-03-29 15:06:33