我正在寻找在运行时通过ObjectContext获取并发固定属性名称,但我找不到任何能够提供此信息的属性或方法。
是否有某种方法可以使用“concurrencyMode = fixed”设置实体属性名称?
答案 0 :(得分:0)
您可以通过查询概念模型获取这些属性的列表:
context.MetadataWorkspace.GetItemCollection(DataSpace.CSpace)
.OfType<EntityType>()
.SelectMany(entityType => entityType.Properties)
.OfType<EdmProperty>()
.Where(ep => ep.TypeUsage.Facets.Any(f => f.Name == "ConcurrencyMode"
&& (EdmConcurrencyMode)f.Value == EdmConcurrencyMode.Fixed))
.Select(ep => new
{
Type = ep.DeclaringType.Name,
Property = ep.Name,
DateType = ep.TypeUsage.EdmType.Name
})