LINQ to SQL C#中的SELECT COUNT

46

我如何使用 COUNT 编写 LINQ to SQL?

示例:

var purch = from purchase in myBlaContext.purchases
            select purchase;

这里怎样才能得到计数?

2个回答

86

就像那样

var purchCount = (from purchase in myBlaContext.purchases select purchase).Count();

甚至更容易

var purchCount = myBlaContext.purchases.Count();

2
@Bside: lblCount.Text = myBlaContext.purchases.Count().ToString() @Bside:lblCount.Text = myBlaContext.purchases.Count().ToString() - George Duckett
@George Duckett,谢谢。但是我收到了错误消息:CS0103:当前上下文中不存在名称“lblCount”...而我已经在aspx页面上放置了lblCount... - Oshrib
1
根据您放置在页面的位置,您可能无法像那样访问它。现在这是一个单独的问题:如何访问asp.net页面上的控件。请参阅http://msdn.microsoft.com/en-us/library/ms178509(v=vs.90).aspx - George Duckett
@Anrei 如果我们使用 myBlaContext.purchases.Count()(from purchase in myBlaContext.purchases select purchase.ID).Count(),是否存在性能差异? - Raghuveer
@irvgk,我怀疑可能存在这种情况。实际上,您可以使用任何SQL配置文件来检查Linq生成的结果SQL查询,即使对于这样相似的查询,它也可能不同。我将在有机会时自己执行此操作(目前不在Windows上)。 - Andrei

10

你应该能够对变量“purch”进行计数:

purch.Count();
例如。
var purch = from purchase in myBlaContext.purchases
select purchase;

purch.Count();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接