2009-11-03 2 views
6

Я разрабатываю службу WCF, которая использует структуру сущностей в качестве источника данных. Почти все в порядке, кроме проблемы с удаленными записями. В нашей базе данных мы используем soft delete (атрибут метки записи IsDeleted = true). Мой вопрос, как исключить мягкие удаленные записи из набора объектов?Entity Framework и мягкие удаленные записи

Например, объект «A» имеет объект «Bs» (FK для таблицы «B»). Как сделать объект "Bs" установленным только содержит из записей, которые не удалены?

Спасибо

ответ

0

Один из способов будет использовать определяющий запрос. Но мы обычно обрабатываем это в Репозитории, так как мы действительно хотим материализовать «мягкие удаленные» сущности в редких случаях.

6

Я написал сообщение об этой теме, надеюсь, что это поможет.

http://blog.jorgef.net/2010/12/ef-soft-delete.html

+0

Следует иметь в виду, что если вы не используете запись.ApplyOriginalValues ​​(entry.Entity), вы получите нулевые значения для своих свойств навигации. – Noel

0

Вы могли бы карту вы EF объекты для взглядов вместо таблиц

CREATE VIEW vw_Currency AS 
SELECT 
    * 
FROM 
    Currency c 
WHERE 
    c.IsAKDeleted=0 

Я работал в системе, которая используется этот подход, но он не был основан на EF. Я не пробовал это с EF

Смежные вопросы