2011-09-01 50 views
0

我有一個表產品:如何在不使用lambda表達式的情況下獲取產品數量?

product_id 
product_name 
prodcut_price 

我的DbContext的名字是abcentity

我想知道有多少個產品(如產品數量)以及product_id,product_name,product_price

我已經使用lambda表達式使用Groupby product_id(這是用於Linq to Sql,但我使用linq到實體)。

我不想使用lambda表達式。是否可以在不使用lambda表達式的情況下獲得產品計數?

+0

爲什麼你不想使用lambda表達式? –

回答

1

你只是想避免lambda語法?您可以在LINQ查詢表達式語法中使用group by子句,而不是調用.GroupBy()

from p in abcentity.products 
group p by p.product_id into g 
select new {g.Key, g.Count()} 

但我應該指出,這仍然被編譯爲lambda表達式。你正在改變的是你用來表示它的語法。

+0

我怎麼能請你詳細說明您的答案.... –

+0

如何獲得product_price和product_name ..... –

+0

我可以獲得product_price和product_name是否與g.count,g.key相同?您可以回覆.. –

0

如果你默認使用Linq to SQL,那麼沒有。從製作lambda創建的Expression是用於確定要創建的查詢的內容。

如果你想要一個自定義表達式,你可以執行你定義的任何SQL - Scott Gu在博客中寫道如何做到這一點here

如果這不是你想要做的,那麼也許你可以解釋爲什麼你不想使用lambda表達式?

+0

我不使用LINQ到SQL,正如我提到的問題,我正在使用LINQ實體....所以纔有可能得到使用LINQ到實體的計數.... –

相關問題