天天看點

從微軟的DBML檔案中我們能學到什麼(它告訴了我們什麼是微軟的重中之重)~二 DBContext執行個體中,表實體對象是怎麼被加入的

<a href="http://www.cnblogs.com/lori/archive/2012/03/24/2415078.html">一 DBContext的構造方法,方法的重載</a>

<a href="http://www.cnblogs.com/lori/archive/2012/03/26/2418790.html">二 DBContext執行個體中,表實體對象是怎麼被加入的</a>

<a href="http://www.cnblogs.com/lori/archive/2012/03/26/2418816.html">三 分部類是否破壞了單一職責</a>

<a href="http://www.cnblogs.com/lori/archive/2012/03/27/2419908.html">四 分部方法從另一方面定義了類型的操作規範</a>

<a href="http://www.cnblogs.com/lori/archive/2012/03/27/2420424.html">五 LINQ實體類中對屬性的指派,變化前與變化後SendPropertyChanging與SendPropertyChanged</a>

<a href="http://www.cnblogs.com/lori/archive/2012/03/27/2420451.html">六 LINQTOSQL中為我們觸發了SendPropertyChanging和SendPropertyChanged,它的真正用意是什麼</a>

<a href="http://www.cnblogs.com/lori/archive/2012/03/30/2426173.html">七 為DBContext對象應該作為其它實體操作類型的基類,并為它提供統一的送出動作</a>

這個系列的主角将一直是linqtosql.dbml,我們一般叫它資料對象關系映射,或者稱為ORM,簡單說就是資料庫與對象之間作一個關系,這種關系我們稱為Mapping,在LinqToSQL中,我們直接将某個資料庫對象托到DBML檔案中,這種關系映射就形成了,也就是說,以後想操作資料庫直接操作DBML中的實體類型就可以了。

我們在使用某種ORM工具時,總有一個習慣,那就是将需要抽象的東西進行抽象,因為在管理起來比較友善,結構上也更符合面向對象,對面LinqToSQL的實體類,我們是否應該把它進行一個抽象?其實,微軟在設計LinqToSQL實體類時已經把答案告訴了我們,那就是“要,必須要”,從實體類型用partial修飾符就可以看出,微軟很希望我們把它重新進行一行抽象,将自己項目需要的東西加入到實體類中,在項目中,代碼可能是這樣:

對于實體的抽象,不僅是LinqToSQL,對于其實的架構也同樣适用。

上一篇: 第八周