如何在代码优先方法中找出哪个 属性 用作两个实体之间的外键

How to find out which property is used as a Foreign Key between two entities in code first approach

我正在使用 Entity Framework 5,代码优先方法。由于没有内置支持在断开连接的情况下更新子实体,因此我正在构建自己的机制来做到这一点。在某些时候,我需要获取一个实体的 属性,它与另一个(主要)实体具有外键关系。我试图通过

访问 CSpace
((IObjectContextAdapter)dbContext).ObjectContext.MetadataWorkspace.GetItems<MyEntity>(System.Data.Entity.Core.Metadata.Edm.DataSpace.CSpace)

但在这里我收到一条警告,说 MyEntity 和 System.Data.Entity.Core.Metadata.Edm.GlobalItem 之间没有隐式转换。

我找不到具有外键属性的 属性,因为在我的大多数实体中,我使用 EF 约定自动获取外键。那么如何找到哪个 属性 用于外键关系。

多亏了,我才能够做我想做的事。所以我在正确的道路上查看内部 ObjectContext