2014-07-18 87 views
-2

我正在嘗試對db上下文進行基本更新。我使用mvc4'System.Data.Entity.DbSet <T>'不包含'Entry'的定義錯誤

這是我在我的控制器:

context.Entry<Rental>(rental); 
context.SaveChanges(); 
return RedirectToAction("Index"); 

我有一個的DbContext類這樣的定義:

T IDAContext.Entry<T>(T entity) 
{ 
    return Set<T>().Entry(entity).State = EntityState.Modified; 
} 
在我的界面

最後

T Entry<T>(T entity) where T : class; 

我得到這個錯誤

'System.Data.Entity.DbSet'不包含'Entry'的定義,並且沒有可以找到接受類型'System.Data.Entity.DbSet'的第一個參數的擴展方法'Entry'缺少using指令或程序集引用?)

也越來越

「EntityState」這個名字不會在目前情況下存在**

+1

變量'context'的數據類型是什麼? –

+0

這是實體框架還是Linq-To-Sql? –

+0

context = new DAContext(); – kayze

回答

0

我的心理調試的力量告訴我即使context被宣佈爲DbSet,你實例化它作爲DbSet派生一些類,你希望有一個Entry()方法

如果是這樣的話,那麼應該申報context是擺在首位的派生型,或您應該將其轉換爲派生類型

((InsertDerivedTypeHere)context).Entry<Rental>(rental); 
+0

你是什麼意思?我的上下文就像你說的,它的聲明爲context = new DAContext(); – kayze

相關問題