我如何避免为 Entity Framework 添加哈希到我的实体名称

How i can avoid hash added for Entity Framework to my entity name

谁能帮我理解为什么实体的框架会在实体名称中添加 "hash" 或类似的东西?

我有一个命名实体 BankMovementHeader 但是,当使用 entity framework 恢复数据库时,给我带来类似 System.Data.Entity.DynamicProxies.BankMovementHeader_D10A1C5179505A4186BA0005487B525128E7B58FBCA552E31ED17A33A4671673 的东西,不知道为什么要添加值 _D10A1C5179505A4186BA0005487B525128E7B58FBCA552E31ED17A33A4671673

这对我不利,因为我想使用实体在 xml 对象中分析它。

1) 如果您使用 Entity Framework 和 Code-First 方法。然后将 DbContext class 的实现修改为

public YourDbContext() : base("name=YourDbContext")
{
    //Your other configuration here
    Configuration.ProxyCreationEnabled = false;
}

2) 如果您使用 Entity Framework 和 Database-First 方法。然后在你的应用程序中为 DbContext 设置你的全局变量。

_dbContext.Configuration.ProxyCreationEnabled = false;