Привет, я совершенно новичок в EF, и мне трудно разобраться, но вот сценарий. Я создал проект и добавил диаграмму edmx, которую я использовал для генерации моделей из предварительно созданной базы данных SQL. Эта диаграмма Дама сгенерировала код для каждой модели и контекст для меня. контекст выглядит примерно так:
public partial class BuzzEntities : ObjectContext
{
public ObjectSet<Case> Cases
{
get
{
if ((_Cases == null))
{
_Cases = base.CreateObjectSet<Case>("Cases");
}
return _Cases;
}
}
Хорошо, пока это позволяет мне делать такие вещи, как
private Buzz.BuzzEntities db = new BuzzEntities();
db.Cases.DeleteObject(someCase);
, который удалит someCase из базы данных. Однако я хотел бы переопределить метод delete, чтобы вместо удаления объекта он помечал свойство объекта как удаленное. то есть someCase.Delete = true; Следующая часть системы должна запретить системе загружать случаи с удаленным = true. По сути, я не хочу, чтобы запись когда-либо удалялась, просто скрытая от системы.
Какой лучший способ добиться этого? Я знаю, что мог бы вручную изменить поле и просто сохранить запись вместо вызова удаления объекта, но я не хочу беспокоиться об установке или скрытии записей в моем пользовательском интерфейсе. Я хочу, чтобы фреймовая обработка обрабатывала это для меня.