в моей реализации DbContext, если есть метод с именем «IsModified». Это используется приложением, чтобы показать какое-то «грязное» состояние. В методе я получаю доступ к ChangeTracker DbContext, как показано ниже.
Если я получаю доступ к ChangeTracker.Entries, когда данные загружаются/материализуются из базы данных, я получаю InvalidOperationException, поскольку внутренняя коллекция stateentry изменилась.
Есть ли способ обойти это без простого использования try/catch. Или, может быть, есть более эффективный способ отслеживания измененного состояния контекста?
public bool IsModified()
{
return this.ChangeTracker.Entries().Any(e => e.State != EntityState.Unchanged);
}