2009-11-23 194 views
1

我正在使用VS2010 B2和EF4 B2並嘗試使用Rhino Mocks來模擬EEF生成的實體上下文。EF4中的模擬實體上下文

var context = MockRepository.GenerateMock<SomeDBEntities>(); 
IObjectSet<TxMode> objectSet = new List<TxMode> { mode }.AsObjectSet(); 
context.Expect(c => c.TxModes).Return(objectSet); 

的問題是,c.TxModesObjectSet<TxMode>而我試圖返回IObjectSet<TxMode>類型的屬性,我得到以下編譯錯誤:

Error 4 The best overloaded method match for 

'Rhino.Mocks.Interfaces.IMethodOptions<System.Data.Objects.ObjectSet 
<Data.Entities.TxMode>>.Return(System.Data.Objects.ObjectSet 
<Data.Entities.TxMode>)' has some invalid arguments. 

的AsObjectSet擴展方法來自here

任何想法如何讓這個編譯?

回答

4

你不能這樣做。 朱莉·勒曼退房後的意甲

  1. Agile Entity Framework 4 Repository: Part 1- Model and POCO Classes
  2. Agile Entity Framework 4 Repository: Part 2- The Repository
  3. Agile EF4 Repository: Part 3 -Fine Tuning the Repository
  4. Agile EF 4 Repositories Part 4: Compiled LINQ Queries
  5. Agile Entity Framework 4 Repository Part 5: IObjectSet and Include

她解釋得非常好如何構建存儲庫模式與EF4讓你嘲笑。 也有T4模板,但這會讓你明白所有的工作。 如果沒有改編的T4模板,啓動並運行它仍然是相當多的工作,但我覺得它是一個非常好的練習。 :) 我現在實際上正在實施它。

祝你好運;)