Я пишу тестовый код, который должен очистить сущности, которые он создает после завершения.Чтобы учесть возможность преждевременного завершения теста, я запускаю код очистки и при его инициализации.
Я использую эту рекомендацию
https://stackoverflow.com/a/5522422/141172
var category = new Category() { CategoryId = 1 };
context.Categories.Attach(category);
context.Categories.Remove(category);
context.SaveChanges();
для удаления сущностей.Однако, если объекты уже были удалены (например, предыдущий тестовый запуск был успешно очищен),
ctx.SaveChanges();
выдает исключение:
Сохранение оператора обновления, вставки или удаления, затронувшегонеожиданное количество строк (0)
Это имеет смысл, но просто ловить исключение немного неловко.Есть ли более чистый способ сделать это, не вводя дополнительную поездку в БД для проверки сущности?