context.Entry()在哪里?

时间:2011-08-18 20:03:34

标签: entity-framework

我通过阅读this article和其他许多人来编写自己的背景信息,但没有一个主题解释了这个context.Entry(obj)的定义,我的意思是即使阅读this article,我也无法理解如何实现此方法,我收到以下错误:

  

错误36'Domain.Entities.OurWebSiteContext'不包含   'Entry'的定义,没有扩展方法'Entry'接受a   “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; }
    }

1 个答案:

答案 0 :(得分:43)

可能为时已晚,但可能对其他人有所帮助,EF 4.0使用ObjectContext类,因为版本4.1使用DbContext类,Set<T>类使用Entry类}和DatabaseContext _context = new DatabaseContext(); _context.ObjectStateManager.ChangeObjectState(entity, System.Data.EntityState.Modified); 已定义。使用4.0版,您可以执行类似

的操作
_context.Entry(entity).State = System.Data.EntityState.Modified;

4.1版本就像

一样
{{1}}

这是一个有用的SO link