Ran*_*dom 2 c# identity entity-framework identity-column
我想获得的KeyMembers,我在EDMX设置了StoreGeneratedPattern到Identity是有办法做到这一点?
我可以使用以下代码获取KeyMembers:
private static IEnumerable<EdmMember> GetKeyMembers(string entityName)
{
var objectContext = EntityModel.ObjectContext;
var metaData = objectContext
.MetadataWorkspace
.GetEntityContainer(objectContext.DefaultContainerName, DataSpace.CSpace)
.BaseEntitySets
.FirstOrDefault(x => x.ElementType.Name == entityName);
return metaData.ElementType.KeyMembers;
}
Run Code Online (Sandbox Code Playgroud)
我有这个问题,它也返回外键,但我只想让PrimaryKeys具有自动递增值.
从给定的MetadataWorkspace,让我们调用mw,我使用:
var cSpaceEntities = mw.GetItems(DataSpace.CSpace).OfType<EntityType>();
foreach (var entity in cSpaceEntities) {
var autoIds = entity.KeyMembers.Where(p =>
p.MetadataProperties
.Any(m => m.PropertyKind == PropertyKind.Extended
&& Convert.ToString(m.Value) == "Identity")).ToArray();
}
Run Code Online (Sandbox Code Playgroud)
请测试
| 归档时间: |
|
| 查看次数: |
611 次 |
| 最近记录: |