2013-03-06 4 views
0

Я добавляю в свое приложение переключатель «WhatIf» (вдохновленный переключателем Powershell -WhatIf), который просто имитирует обработку данных, не сохраняя никаких реальных изменений данных обратно в хранилище EF.Являются ли изменения данных EF ТОЛЬКО сохраняемыми при вызове SaveChanges()?

Как я надеялся осуществить это, просто добавив проверку перед вызовом SaveChanges(), как это:

if (WhatIf == false) 
    efEntities.SaveChanges() 

Таким образом, остальная часть приложения может вносить изменения в обычном режиме, и до тех пор, поскольку SaveChanges() никогда не вызывается, мне не нужно беспокоиться о том, что какие-либо изменения происходят случайно.

Будет ли это работать? Я беспокоюсь, что SaveChanges будут вызваны другими частями EF, такими как Dispose, или что-то в этом роде?

Спасибо!

ответ

2

Будет работать. EF не вызывает сам SaveChanges. Разработчик всегда несет ответственность за сохраняющиеся изменения.

+0

Прямо к делу - спасибо! –