本文整理汇总了C#中Metadata.IsEntityType方法的典型用法代码示例。如果您正苦于以下问题:C# Metadata.IsEntityType方法的具体用法?C# Metadata.IsEntityType怎么用?C# Metadata.IsEntityType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Metadata
的用法示例。
在下文中一共展示了Metadata.IsEntityType方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AddEntityType
/// <summary>
/// Adds the specified entity type and any associated entity types recursively to the specified set.
/// </summary>
/// <param name="entityType">The entity Type to add.</param>
/// <param name="entityTypes">The types set to accumulate in.</param>
/// <param name="metadataProvider">The metadata provider.</param>
private static void AddEntityType(Type entityType, ICollection<Type> entityTypes, Metadata.MetadataProvider metadataProvider)
{
if (entityTypes.Contains(entityType)) {
// already added this type
return;
}
entityTypes.Add(entityType);
RegisterDataControllerTypeDescriptionProvider(entityType, metadataProvider);
if (metadataProvider.IsEntityType(entityType)) {
TypeDescriptor.GetProperties(entityType)
.Cast<PropertyDescriptor>()
.Where(pd => pd.HasAttribute<AssociationAttribute>())
.Where(TypeUtility.IsDataMember)
.Select(pd => TypeUtility.GetElementType(pd.PropertyType))
.ForEach(t => AddEntityType(t, entityTypes, metadataProvider));
}
// Recursively add any derived entity types specified by [KnownType]
// attributes
TypeUtility.GetKnownTypes(entityType, true)
.Where(entityType.IsAssignableFrom)
.ForEach(t => AddEntityType(t, entityTypes, metadataProvider));
}