I’ve been trying to do this for a good few hours now and this is as far as I have got
var castItems = typeof(Enumerable).GetMethod("Cast")
.MakeGenericMethod(new Type[] { targetType })
.Invoke(null, new object[] { items });
This returns me
System.Linq.Enumerable+d__aa`1[MyObjectType]
whereas I need (for my ViewData) as generic list i.e.
System.Collections.Generic.List`1[MyObjectType]
Any pointers would be great
You just need to call ToList() on it afterwards:
Another option would be to write a single generic method in your own class to do this, and call that with reflection: