I need to be able to get something similar to the following to work:
Type type = ??? // something decided at runtime with .GetType or typeof;
object[] entity
Based on @Jon Skeet's answer, here's a LINQ extension method:
public static class QueryableExtensions
{
public static IQueryable OfType(this IQueryable queryable,
Type runtimeType)
{
var method = typeof(Queryable).GetMethod(nameof(Queryable.OfType));
var generic = method.MakeGenericMethod(new[] { runtimeType });
return (IQueryable)generic.Invoke(null, new[] { queryable });
}
}