2

.net を使用するクライアントがあり、LINQ を使用する既存のコードで LINQBride を使用しています。私はlinqについてあまり知りませんが、この式にLINQBridgeを使用して簡単に変換できるかどうか疑問に思っています

DynamicMethod.CreateDelegate(Expression.GetFuncType(typeof(IDataReader), type));

ありがとう

4

1 に答える 1

2

LinqBridgeはLinqtoObjectsのみを実装し、式をサポートしていません。しかし、リフレクションを使用して同様のことを達成できます。

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>
}
于 2012-06-01T22:47:16.550 に答える