【发布时间】:2013-08-21 05:22:34
【问题描述】:
我正在尝试在动态 linq select 语句中调用函数,但出现错误:
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。写在标签里:dynamic-linq
标签: c# linq linq-to-objects dynamic-linq