我有一个使用 .net 的客户端,我正在使用 LINQBride 和一些使用 LINQ 的现有代码。我对 linq 了解不多,但我想知道是否可以使用 LINQBridge 进行此表达式的快速转换
DynamicMethod.CreateDelegate(Expression.GetFuncType(typeof(IDataReader), type));
谢谢
LinqBridge 只实现了 Linq to Objects,它不支持表达式。但是你可以使用反射来实现类似的东西:
static Type GetFuncType(params Type[] typeArgs)
{
string typeName = "System.Func`" + typeArgs.Length;
Type genericTypeDef = typeof(Func<>).Assembly.GetType(typeName); // Func<,...,>
return genericTypeDef.MakeGenericType(typeArgs); // Func<TArg1, ..., TResult>
}