【发布时间】:2012-05-29 08:41:56
【问题描述】:
我创建了一个实体模型。当我在运行时传递实体名称时,我想获取主键名称(即属性名称)。有可能吗?
【问题讨论】:
-
列名还是属性名?为什么需要列名?
-
是的,我的意思是属性名称
标签: entity-framework
我创建了一个实体模型。当我在运行时传递实体名称时,我想获取主键名称(即属性名称)。有可能吗?
【问题讨论】:
标签: entity-framework
实体类型可以:
var objectSet = objectContext.CreateObjectSet<YourEntityType>();
var keyNames = objectSet.EntitySet.ElementType.KeyMembers.Select(k => k.Name);
或实体类型名称:
var workspace = objectContext.MetadataWorkspace;
var entityType = workspace.GetItems<EntityType>(DataSpace.CSpace)
.FirstOrDefault(e => e.Name == yourEntityTypeName);
var keyNames = entityType.KeyMembers.Select(k => k.Name);
【讨论】: