如何在不使用lambda表达式的情况下获得产品数量?

时间:2011-09-01 18:48:29

标签: c# .net winforms entity-framework linq-to-entities

我有一个餐桌产品:

product_id
product_name
prodcut_price

我的dbcontext名称是abcentity

我希望获得多少产品(例如产品数量)以及product_idproduct_nameproduct_price

我已经使用Groupby product_id使用了lambda表达式(这是用于Linq到Sql,但我使用linq来实现)。

我不想使用lambda表达式。是否可以在不使用lambda表达式的情况下获得产品数量?

2 个答案:

答案 0 :(得分: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表达式。你正在改变的只是用来表示它的语法。

答案 1 :(得分:0)

如果你默认使用Linq to SQL,那么没有。从创建lambda创建的Expression是用于确定要创建的查询的内容。

如果你想要一个自定义表达式,你可以执行你定义的任何SQL - Scott Gu博客写了关于如何执行此操作here

如果那不是你想要做的,那么也许你可以解释为什么你不想使用lambda表达式?