Entity framework ChangeTracker不显示实体框架中的导航属性更改

Entity framework ChangeTracker不显示实体框架中的导航属性更改,entity-framework,audit,navigation-properties,tracker,Entity Framework,Audit,Navigation Properties,Tracker,我在实体框架中有以下结构 [Table("Person")] public class Person { [DatabaseGenerated(DatabaseGeneratedOption.Identity)] [Key] public long Id{get ;set;} public string Name{get;set;} public long DId { get; set; } // this is id from Department T

我在实体框架中有以下结构

[Table("Person")]
public class Person
{
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    [Key]
    public long Id{get  ;set;}
    public string Name{get;set;}
    public long DId { get; set; } // this is id from Department Table

    [ForeignKey("DId")]
    public Department SudentDepartment{get;set;}
}
[Table("Department")]
public class Department
{
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    [Key]
    public long Id{get  ;set;}
    public string Name { get; set; }
}
现在,我正在重写SaveChanges方法,以便在字段级别审计审计表中的更改。我无法在ChangeTracker中获取部门的新旧值,因为它是导航属性。这是必需的,因为在审计表中,我需要保存部门名称而不是Id


有没有办法在ChangeTracker中获得导航属性?

我唯一的输入是,您可以尝试使用与库中类似的代码

在此处检查GetForeignKeysValues代码:

有人对这个问题提出了意见吗?有人提出了建议吗?你找到答案了吗?