2010-05-11 52 views
2

我的EF .NET 3.5中的中級用戶,最近搬到了與.NET的4實體框架4中對象集的所有宣傳是什麼?

一個我不斷閱讀各種教程當跨越未來的事情是利用ObjectSets代替ObjectQuerys的,他們是一個偉大的新功能。

對他們有什麼好處?

請賜教。

親切的問候, 鋼鈑

回答

4

不知道如果這就是你的意思是你的問題,但什麼是真正酷的對象集是它實現的接口IObjectSet這意味着你可以僞造它很容易和測試直到數據訪問層的代碼

什麼更酷,是因爲對象集使用泛型類型(IObjectSet < T>),你可以有一個通用的存儲庫,並實現單位工作格局。

public interface IRepository<T> where T : class 
{ 
    IQueryable<T> GetQuery(); 
    IEnumerable<T> GetAll(); 
    IEnumerable<T> Find(Func<T, bool> where); 
    T Single(Func<T, bool> where); 
    T First(Func<T, bool> where); 

    void Delete(T entity); 
    void Add(T entity); 
    void Attach(T entity); 
    void SaveChanges(); 
} 

完整的文章在這裏:

http://elegantcode.com/2009/12/15/entity-framework-ef4-generic-repository-and-unit-of-work-prototype/

+0

好吧,讓SENCE,因爲我一直在尋找在做一個通用的存儲庫,當我看到這個「炒作」的教程。乾杯。 – 4imble 2010-05-11 12:45:15

+0

只是出於興趣,如果需要,我會提出一個新問題,但通過objectquery,objectset或objectcontext添加產品與上面顯示的產品有什麼區別? – 4imble 2010-05-11 12:46:17

+0

我其實不知道這個問題的答案: -/ 我的第一個猜測是,它在使用POCO時與自我跟蹤實體與持久不可知實體有關。但不太確定,對不起。 – 2010-05-11 13:13:12