C# “System.Data.Entity.DbSet”不包含“Entry”错误的定义
我正在尝试对数据库上下文进行基本更新。我正在使用mvc4 这是我的控制器中的内容:C# “System.Data.Entity.DbSet”不包含“Entry”错误的定义,c#,.net,C#,.net,我正在尝试对数据库上下文进行基本更新。我正在使用mvc4 这是我的控制器中的内容: context.Entry<Rental>(rental); context.SaveChanges(); return RedirectToAction("Index"); 我有一个定义如下的dbcontext类: T IDAContext.Entry<T>(T entity) { return Set<T>().Entry(entity).State = Ent
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”在当前上下文中不存在**
我的心理调试能力告诉我,即使上下文被声明为DbSet,您还是将其实例化为从DbSet派生的某个类,您希望它有一个Entry方法 如果是这种情况,那么您应该首先将上下文声明为派生类型,或者将其强制转换为派生类型
((InsertDerivedTypeHere)context).Entry<Rental>(rental);
变量context的数据类型是什么?是实体框架还是Linq To Sql?context=new DAContext;更新记录时,此语法是否正确:return Set.Entryentity.State=EntityState.Modified??什么意思?我的上下文正如你所说,它被声明为context=newdacontext;