如何使用通货再膨胀来获取列类型?

时间:2015-11-21 14:07:53

标签: c# .net entity-framework reflection

我在项目代码第一种方法中使用实体框架6。 从DbContext类型继承的上下文变量类。

我有这段代码:

   var table = (IEnumerable)context.GetType().
               GetProperty("TableName").
               GetValue(context, null);

从上面的table我需要按名称获取列的类型。

知道如何实施它?

1 个答案:

答案 0 :(得分:3)

而不是IEnumerable,您需要将表格转换为IQueryable并使用IQueryable.ElementType Property来获取所需的信息,例如

var table = (IQueryable)context.GetType().
               GetProperty("TableName").
               GetValue(context, null);
var propertyType = table.ElementType.GetProperty("PropertyName").PropertyType;