2009-09-08 73 views
3

我正在考慮使用LINQ-to-SQL在我的應用程序中創建DAL。我通常手動創建DAL,因爲我並不是ORM的狂熱粉絲(太抽象IMO),但我正在努力爲急躁的客戶端節省一些時間。如何將LINQ-to-SQL映射到BLL類?

我的問題是,如何將LINQ-to-SQL生成的類映射到BLL類?你只是將代碼添加到由LINQ-to-SQL生成的類中(它們是部分類),並且根本不創建BLL類(因此該類既可以作爲DAL也可以作爲BLL類使用)或者您通常如何執行它?

感謝

回答

7

最重要的區別在於認識到LINQ到SQL實際有兩個部分:您擁有實體類 - 他們要麼生成或手寫在您的解決方案 - 該做和LINQ到SQL庫將LINQ表達式轉換爲SQL並投影結果的繁重工作。前者是你的BLL,後者是你的DAL。 LINQ to SQL模型主要滿足這一點,因爲DAL是實體不可知的(或BLL不可知的);你的實體與DAL的耦合非常鬆散;如果需要,可以將它們全部用於DAL之外。因此,最簡單的答案是LINQ to SQL模型可以同時滿足DAL和BLL角色,但僅僅因爲您爲兩者使用一個模型並不意味着您不恰當地組合了這兩個層。

+0

這回答了這個問題。非常感謝 – 2009-09-08 04:21:31