Entity Framework 5 - DbContext hat Änderungen?

Ich versuche, einen Weg zu finden, um festzustellen, ob Änderungen an einem Datenbankkontext (DbContext) vorgenommen wurden. Hinweis: Ich verwende Visual Studio 2012 mit Entity Framework 5 auf einer 64-Bit-Windows 7-Box.

Als ich früher ObjectContext anstelle von DbContext verwendet habe, konnte ich Folgendes tun:

public partial class MyObjectContext
{
    public Boolean HasUnsavedChanges()
    {
        return (this.ObjectStateManager.GetObjectStateEntries(EntityState.Added | EntityState.Modified | EntityState.Deleted).Any());
    }
}

Nachdem ich DbContext verwende, habe ich Folgendes versucht:

public partial class MyDbContext
{
    public ObjectContext ObjectContext()
    {
        return (this as IObjectContextAdapter).ObjectContext;
    }

    public Boolean HasUnsavedChanges()
    {
        return (this.ObjectContext().ObjectStateManager.GetObjectStateEntries(EntityState.Added | EntityState.Modified | EntityState.Deleted).Any());
    }
}

Das Problem, das ich habe, ist, dass die Methode "HasUnsavedChanges ()" immer "false" zurückgibt, auch wenn ich weiß, dass der Kontext geändert wurde. Hat jemand eine Idee, was ich falsch mache?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage