【发布时间】:2018-11-28 06:29:22
【问题描述】:
我正在创建一个映射器函数,它将在运行时采用具有未知不同泛型类型的 EntitySet<>,我想获取传入 EntitySet 中的实体并将它们添加到列表中。
我无法访问实体,因为我将 EntitySet 作为对象传入,当我尝试将对象转换为相应类型时失败,因为我不知道 EntitySet 的泛型类型
((EntitySet<XXXX>)dataValues[pInfo.Name]).ToList();
我可以读取泛型 EntitySet 的数据类型,但我不能用它来进行演员表,我不知道如何,也不知道它是否可能!
dataValues[pInfo.Name].GetType().GenericTypeArguments.First()
我不太关心泛型类型,因为我只需要在 EntitySet 中获取集合。
我知道我的问题似乎是重复的,但老实说,我在搜索时发现的结果无法解决我的问题。
我正在使用C# 和ASP.net
【问题讨论】:
-
EntitySet<TEntity>实现了非通用的System.Collections.IList接口,这对你来说是一个选项吗?
标签: c# asp.net generics casting runtime