2009-02-08 55 views
1

我可以通過一些指導來理解asp.net &數據庫的世界。瞭解ASP.Net和數據庫

似乎有這麼多的選擇,我真的不知道要尋找什麼成&在不同情況下使用什麼。

我已經創建了過去曾使用過數據集的網站,但我從來沒有真正理解發生了什麼,或者爲什麼我應該或不應該使用它們來創建一個sql連接並運行sql語句。

我的理解是有標準的SQLReader的,數據集,實體框架& LINQ。

這些如何相互關聯? 什麼建議&什麼時候?

有沒有指導所有這些地方? (我真的不想找如何爲www.asp.net/learn表明你做的事情,但是當&爲什麼做某事)

回答

2

有網絡爲親的和反對的可用的信息噸每種方法的,但簡而言之,要在以下順序:

sqlreader 
datasets 
Linq 
entity framework 

您從最快的要慢(在原始性能方面)和最低的功能和複雜性最小的大多數功能和最複雜。這是一個巨大的簡化,但我認爲它非常有效。原始性能並不總是最重要的問題,因此它不如選擇最快的方法那麼簡單。其他因素也會發揮作用,例如您正在處理的應用程序的規模和複雜程度,程序員是否也是DBA(或者如果您有專門的DBA,他們有自己的db訪問需求),無論您是否願意可以要求或允許使用存儲過程等

我覺得作爲一個開發人員必須瞭解所有4種方法(及其他),並能夠挑選一個最適合你正在從事的項目是非常重要的。

我曾與前3(並計劃很快學習EF)的工作,並最終使用SQLReader的大部分時間。 Datareader的開銷最小,在大多數情況下運行速度最快,因此需要編寫更多自己的代碼。

+0

公平地說,性能的損失並不總是像這個答案似乎暗示的那麼重要......當正確使用LINQ和EF時可能相當快。 – 2009-02-08 18:05:32

1

將此前言介紹至ADO.NET;它是ASP.NET數據訪問的一個隱含部分,應該可以幫助您理解數據流。