У меня есть классы обслуживания на основе Entity Framework 4. Я бы хотел протестировать их в базе данных, заполненной предварительно сгенерированными данными образца. Проблема в том, что я хотел бы, чтобы тесты, прошедшие или не прошедшие проверку, фактически не касались базы данных, чтобы ее можно было повторно использовать для других тестов.Возможно ли предотвратить запись EF SaveChanges() в БД?
Таким образом, мне бы хотелось, чтобы ObjectContext.SaveChanges притворился, что все в порядке, и сохраняйте изменения в памяти, но молча игнорируйте их фактическое сохранение в источнике данных. Это возможно?
P.S. Я знаю шаблон репозитория, но не хотел бы использовать его в этом случае.
Зачем беспокоиться даже о вызове SaveChanges, если вы не проверяете его влияние на уровень данных? –
Да, у меня была такая же идея :-) Может быть, флаг, переданный конструктору службы, может быть. Жаль, что такие вещи, как DRI, не будут проверены, но я полагаю, что нет возможности проверить их, не попав в БД. –