2011-06-10 54 views
1

我的問題是,我試圖使2 OrderBy但第二個是從來沒有生成的實體框架,我檢查了生成的查詢。實體框架不生成第二個訂單由

這就是我想通過生成Table1.Table2.SomeColumn

var query = model.SomeTable.Where(condition); 
if (somecondition) 
    query = query.OrderByDescending(o => o.Table1.Col1).OrderBy(c => c.Table1.Table2.SomeColumn); 
var result = query.Select(c => new 
          { 
           //selection here 
          }); 

訂單,但絕不會在產生的第二排序依據Table1.Col1,因此我的結果是錯誤的。

任何想法?

回答

3

使用的OrderBy和ThenBy組合..即:

query = query.OrderByDescending(o => o.Table1.Col1) 
      .ThenBy(c => c.Table1.Table2.SomeColumn);