Tam*_*mir 3 .net c# entity-framework
我怎样才能提取的列表Types从ObjectContext?
例如,我有对象上下文包含名为"Bank"的实体和名为"Company"的实体.我想获得它们的EntityObject类型.
我怎样才能做到这一点?
我假设您在运行时想要查询生成的ObjectContext类以获取EntityObject类列表.然后它成为反思的练习:
PropertyInfo[] propertyInfos = objectContext.GetType().GetProperties();
IEnumerable<Type> entityObjectTypes =
  from propertyInfo in propertyInfos
  let propertyType = propertyInfo.PropertyType
  where propertyType.IsGenericType
    && propertyType.Namespace == "System.Data.Objects"
    && propertyType.Name == "ObjectQuery`1"
    && propertyType.GetGenericArguments()[0].IsSubclassOf(typeof(EntityObject))
  select propertyType.GetGenericArguments()[0];
此代码会发现有类型的对象范围内的所有公共属性System.Data.Objects.ObjectQuery<T>,其中T是的一个子类EntityObject.
| 归档时间: | 
 | 
| 查看次数: | 2030 次 | 
| 最近记录: |