DbContext AutoDetectChangesEnabled ustawiony na fałszywe zmiany wykrywania

Jestem trochę zakłopotany. Z tego co przeczytałem ustawiającDbContext.AutoDetectChangesEnabled dofalse powinien wyłączyć śledzenie zmian, które wymaga wywołaniaDbContext.DetectChanges w celu zidentyfikowania zmian, które mają zostać wysłane do bazy danych.

Jednak z moich dzienników poniżej wynika, że ​​zmiany są rejestrowane przez śledzenie zmian dbContexts, nawet przy ustawieniu wartości false.

Czy czegoś mi brakuje?

Entity Framework Version: 5.0.0.0

Klasa DbContext

public class ProjectContext : DbContext {
    public DbSet<Project> Projects {get;set;}
}

Klasa kontrolera

private ProjectContext db = new ProjectContext();

public method(){
    Project p = new Project("uniqueName");
    db.Configuration.AutoDetectChangesEnabled = false;
    db.Projects.Add(p);
    DebugChangeTracker();
    db.SaveChanges();

    db.Projects.First().ProjectName = "a differentName!";
    DebugChangeTracker();
    db.SaveChanges();
}

Metoda logowania

    private void DebugChangeTracker()
    {
        var path = "C:\\mypath\\";
        path = path + Util.GetMsSinceEpoch().ToString() + "changeTracker.log";

        using (StreamWriter sw = new StreamWriter(path))
        {
            var changeTracker = db.ChangeTracker;
            var entries = changeTracker.Entries();
            foreach (var x in entries)
            {

                var name = x.Entity.ToString();
                var state = x.State;

                sw.WriteLine("");
                sw.WriteLine("***Entity Name: " + name +
                             "is in a state of " + state);
                var currentValues = x.CurrentValues;
                sw.WriteLine("***CurrentValues***");
                PrintPropertyValues(currentValues,sw);
                if (state != EntityState.Added)
                {
                    sw.WriteLine("***Original Values***");
                    PrintPropertyValues(x.OriginalValues,sw);
                }
            }
        }
    }

Pierwszy dziennik

***Entity Name: Models.Projectis in a state of Added
***CurrentValues***
ProjectId:0
ProjectName:uniqueName

Drugi dziennik

***Entity Name: Models.Projectis in a state of Modified
***CurrentValues***
ProjectId:1
ProjectName:uniqueName
***Original Values***
ProjectId:1
ProjectName:a differentName!

questionAnswers(3)

yourAnswerToTheQuestion