轉換在哪裏我想去從從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