Подтвердить что ты не робот

Где is context.Entry()?

Я написал свой собственный контекст, прочитав эту статью и многие другие, но ни одна из тем не объясняет, где находится этот context.Entry(obj), я имею в виду даже при чтении в этой статье, я не могу понять, как реализовать этот метод, и я получаю следующую ошибку:

Ошибка 36 'Domain.Entities.OurWebSiteContext' не содержит определение "Enter" и метод расширения "Enter", принимающий Первый аргумент типа "Domain.Entities.OurWebSiteContext" может быть (вам не хватает директивы использования или ссылки на сборку?)

Кто-нибудь поможет мне, пожалуйста,

Отредактировано →

 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; }
    }
4b9b3361

Ответ 1

может быть слишком поздно для ответа, но это может помочь другим, EF 4.0 использует класс ObjectContext, где, поскольку версия 4.1 использует класс DbContext, в котором определены методы, такие как Set<T> и Entry, С версией 4.0 вы можете сделать что-то вроде

DatabaseContext _context = new DatabaseContext();
_context.ObjectStateManager.ChangeObjectState(entity, System.Data.EntityState.Modified);

с версией 4.1, сделанной как

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

здесь полезная ссылка SO