context.Entry()在哪里?

Bab*_*loo 29 entity-framework

我通过阅读本文和许多其他文章编写了我自己的上下文,但没有一个主题解释了这个context.Entry(obj)定义的位置,我的意思是即使阅读本文,我也无法理解如何实现此方法,并且我得到以下错误:

错误36'Domain.Entities.OurWebSiteContext'不包含'Entry'的定义,并且没有扩展方法'Entry'可以找到接受类型为'Domain.Entities.OurWebSiteContext'的第一个参数(你是否缺少using指令或者装配参考?)

请有人帮帮我

编辑>>

 public class OurWebSiteContext : DbContext
    {
        public OurWebSiteContext(string connString)
            : base(connString)
        {

        }

        public DbSet<Article> Articles { get; set; }
        public DbSet<Category> Categories { get; set; }
        public DbSet<Comment> Comments { get; set; }
    }
Run Code Online (Sandbox Code Playgroud)

Joh*_*n x 43

可能为时已晚,但它可能对其他人有所帮助,EF 4.0使用ObjectContext类,其中版本4.1使用DbContextSet<T>Entry定义方法的类.使用4.0版,您可以执行类似的操作

DatabaseContext _context = new DatabaseContext();
_context.ObjectStateManager.ChangeObjectState(entity, System.Data.EntityState.Modified);
Run Code Online (Sandbox Code Playgroud)

与4.1版本完成一样

_context.Entry(entity).State = System.Data.EntityState.Modified;
Run Code Online (Sandbox Code Playgroud)

这是一个有用的SO链接