【发布时间】:2019-03-18 07:28:37
【问题描述】:
有人能帮我理解为什么实体的框架会在实体名称中添加“哈希”或类似的东西吗?
我有一个命名实体 BankMovementHeader 但是,当使用实体框架恢复数据库时,给我带来了 System.Data.Entity.DynamicProxies.BankMovementHeader_D10A1C5179505A4186BA0005487B525128E7B58FBCA552E31ED17A33A4671673 之类的东西,不知道为什么要添加 _D10A1C5179505A4186BA0005487B525128E7B58FBCA552E31ED17A33A4671673 的值。
这对我不利,因为我想使用实体在 xml 对象中对其进行分析。
【问题讨论】:
-
尝试修改您的 DbContext 类,例如 =>
public YourDbContext() : base("name=YourDbContext") { Database.SetInitializer<YourDbContext>(null); Configuration.ProxyCreationEnabled = false; } -
感谢@ershoaib 的回复,如果我的 DbContext 是使用实体框架创建的(DB First Approach),我该怎么做
-
对于 DB 优先方法,当您在应用程序中为
DbContext创建全局变量时,只需将其设置为_dbContext.Configuration.ProxyCreationEnabled = false; -
非常感谢@ershoaib,现在可以正常使用了。
-
我将此添加为您的问题的答案,您只需在答案左侧标记刻度以使其变为绿色:)
标签: c# entity-framework asp.net-mvc-5