2013-04-15 33 views
3

我想用多個動作對datagridview進行排序。用linq C動態分類#

我解釋一下我自己:我有一個關鍵和價值的詞典。 ,該值與ASC或DESC一個字符串,我想一切都整理此策略:

string sort=String.Empty; 
sort+=".OrderBy(c=>c.Value)"; ==> the first one in my list 
foreach(var column in list) 
{ 
    if(column.Value=="DESC") 
     sort+=".ThenByDescending(c=>c.Value)"; 

    if(column.Value=="ASC") 
     sort+=".ThenByAscending(c=>c.Value)"; 
} 

List<Formule> list=ListFormules.Where(f=>f.Identificator==null) ==>這是我的問題

我不知道如何改變我的字符串在我的查詢中工作。 你有想法或更好的方法來做到這一點?

+2

查看動態LINQ。 [鏈接](http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspx) – scheien

+1

+1 @ scheien - 應該可能擴展到一個完整的答案..! – AlexFoxGill

+0

@亞歷克斯這是不可能的,甚至可以統計已經解釋過的所有答案...... – usr

回答

2

發表我的評論作爲回答,由於意見。

你應該看看動態linq。

Scott Guthrie有詳細的博客文章。 Link

+3

但是,您可能希望擴大您的答案,但是,由於可能的鏈接腐爛,僅鏈接答案被認爲基本上沒有幫助。 –