我正在尝试从对象转换为List,在运行时我知道'T'。有没有办法施放或任何其他解决方案
//这默认返回一个对象,但在运行时返回List<T>
var getList = modelClass.GetValue(modelObject);
现在, getList 不允许使用Linq属性。
我知道Type(T)(通过代码动态获取)
是否有任何解决办法如下:
var getList = (List<typeClassObject>))modelClass.GetValue(modelObject);
请帮助解决这个问题
答案 0 :(得分:0)
假设modelClass.GetValue(modelObject)
返回IEnumerable<someType>
,您应该可以按如下方式进行转换:
var getList = modelClass.GetValue(modelObject)
.Select(obj => ((object) obj) as typeClassObject);
getList
现在是IEnumberable<typeClassObject>
做的:
var getList = modelClass.GetValue(modelObject)
.Select(obj => ((object) obj) as typeClassObject)
.ToList();
getList
为List<typeClassObject>