2
一個模擬的背景下,我有我的上下文,它包含的東西,如:無法建立在實體框架5
public partial class MyEntities : DbContext
{
...
public DbSet<Cat> Cats { get; set; }
}
我想嘲笑它。
我創建了另一個實現我稱爲IContext
的接口的部分類。
我必須把這個接口
public interface IContext
{
DbSet<Cat> Cats { get; set; }
}
然後我就可以創建一個模擬,每個人都高興。
除了我不想在我的界面中使用DbSet<Cat>
。這似乎是錯誤的,因爲我不會使用數據庫。有什麼方法可以改變它,或者有更好的解決方案嗎?很顯然,上下文是從模板自動生成的,所以如果不在重新生成時丟失它,我無法對其進行編輯。
我不太確定如何繼續創建模擬上下文。有任何想法嗎?
我不知道我怎樣才能改變'DbSet''到IDbSet ''因爲DbSet '在自動生成的'MyEntities'類 –
NibblyPig
2013-05-06 12:43:08
不知道存在你如何autogenerating。如果你使用T4模板,你可以修改它,不應該是一個大問題。你仍然可以去T套()。但是這需要您以不同方式編寫查詢,而不使用DbContext集屬性。 –
jure
2013-05-06 12:46:31
@jure你的意思是'IDbSet Set ();'?只是'T'的返回類型意味着'Set ()'返回一個'Cat'。 –
grant
2013-05-17 00:20:48