我有一个名为o的变量(类型:object
)。我还有一个名为t的变量(类型:Type
)。我知道o是EntitySet
,其类型为t,其中包含一个条目。
我需要获取EntitySet中的第一个元素,以便我可以使用反射来获得它的属性。尝试了几种获取第一个元素的方法,但没有一个方法有效。
有:
Type t;
object o; // we know it's EntitySet<t>
我需要
t firstElement = o[0];
答案 0 :(得分:0)
您应该能够将其转换为IEnumerable<object>
,因为IEnumerable<T>
是协变的。 IList不会工作。
Type t;
object o;
var objList = (IEnumerable<object>)o;
var firstObject = objList.First();
//Do your reflection magic with firstObject