转换在哪里我想去从从LINQ子句动态LINQ
var selectData = (from i in data
where i.Name == "Bob1"
select i);
要
var selectData = (from i in data
select i).Where("Name==Bob1");
我已经试过各种方法(AsQueryable
,Where<SomeData>
),但不能得到第二表格来编译。
我没有掌握C#的通用扩展方法。 <Tsource>
对我来说没有意义,所以这可能是问题所在。此外,我不明白当intellisense只显示.Where<>
(通用)时,为什么我可以输入.Where()
。我希望看到没有通用符号的第二个Where
......唉,我没有。
类
public class SomeData
{
public string Name { get; set; }
public string Address { get; set; }
}
UPDATE
似乎有一些混乱,如何在哪里()可以使用的可能是我的错。请参阅related问题。根据这个答案,where子句中的属性名称是完全合法的。我需要财产保持一个字符串。如果这意味着需要动态LINQ,那就这样吧......这就是我所需要的。
这似乎与另一篇文章相似。也许这将帮助 [LINQ - 动态WHERE子句?] [1] [1]:http://stackoverflow.com/questions/848415/linq-dynamic-where-clause – 2012-03-21 18:06:56
你需要动态查询你的属性名称?你能证实这一点吗? – payo 2012-03-21 18:07:04
我还是不明白。如果你正在寻找如何做动态Linq,你已经在[你问的其他问题](http://stackoverflow.com/questions/9505189/dynamically-generate-linq-queries)上引用的答案还没有也回答这个问题? – 2012-03-21 18:10:15