我试图在动态 linq 选择语句中调用一个函数,但是出现了错误:
No property or field 'A' exists in type 'Tuple2'
示例代码:
void Main()
{
var a = new Tuple<int, int>(1,1);
var b = new[]{ a };
var q = b.AsQueryable().Select("A.Test(it.Item1)");
q.Dump();
}
public static class A
{
public static int Test(int i)
{
return i++;
}
}
我该如何修改代码才能让它正常运行?
例如,如果我调用内置函数Convert.ToInt32
,那么它就可以正常工作。
var q = b.AsQueryable().Select("Convert.ToInt32(it.Item1)");
同时,我该如何使用动态LINQ转换属性?
var q = b.AsQueryable().Select("((float)it.Item1)");
Enumerable.Select
方法中的语法是什么? - Bob.