2013-04-25 71 views
0

我在EF4中使用動態LINQ查詢。EF中的動態LINQ查詢

下面的代碼會引發錯誤:'New'無法解析爲有效的類型或函數。

var x = ent.OM_COMPANY 
    .Where(qry) 
    .OrderBy("it.CM_CODE") 
    .Select("New(it.CM_CODE, it.CM_NAME)"); 

我在做什麼錯?

下面的代碼無任何錯誤地執行。

var x = from cmp in ent.OM_COMPANY 
     where (qry) 
     orderby cmp.CM_CODE 
     select new { cmp.CM_CODE, cmp.CM_NAME }; 
+0

什麼用'新{C1 = cmp.CM_CODE,C2 = cmp.CM_NAME}' – tschmit007 2013-04-25 09:54:33

+0

@ tschmit007對不起,我張貼的問題wrong.I've更新now.Please檢查。 – sjj 2013-04-25 10:16:27

回答

0

我甚至不知道如何得到第一個代碼塊來編譯。 OrderBySelect都採用lambdas而不是字符串。應該寫成:

var x = ent.OM_COMPANY 
    .Where(qry) 
    .OrderBy(c => c.CM_CODE) 
    .Select(c => c.CM_CODE, c.CM_NAME);