c# - 使用 LINQ 的 SQL 表行总和?

标签 c# .net linq-to-sql

SQL 数据库中有一个表,如下所示:

示例表:

-----------------------
 id | number | price 
-----------------------
 1  |   3    | 300
 2  |   1    | 200
 3  |   5    | 100
 4  |   10   | 10
 5  |   30   | 30
 6  |   1    | 500
-----------------------

我想像下面这样计算总价:

in each row => var SumOfEachRow = number * price;
Total Price = sum of SumOfEachRow;

因此总价将为3100。

现在,我想用 LINQ 计算它。 例如:

int TotalPrice = from q in SampleTable
                 select new
                 {
                    TotalPrice = q.number * q.price 
                 }.Sum();

上面的代码返回了错误的结果!!! 你能指导我吗?谢谢。

最佳答案

尝试:

decimal TotalPrice = SampleTable.Sum(q => q.number * q.price);

关于c# - 使用 LINQ 的 SQL 表行总和?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3952849/

相关文章:

c# - 枚举整个 LinqToSql 对象

c# - 执行 DeleteOnSubmit()、SubmitChanges()、InsertOnSubmit()、SubmitChanges() 不工作(抛出 Entity Already exists 异常)!

c# - 当前进程的性能计数器 CPU 使用率超过 100

c# - Web 应用程序中的 NHibernate 查询策略

c# - SQL Server 存储过程无法识别 string.empty 等

.net - asmx 服务可以不返回任何内容而不是 null 吗?

c# - Linq-to-Sql 设计器中的自定义表达式

c# - 从 MVC Controller 返回一个字符串到 jQuery

c# - 创建相册查看器

.net - 工具栏上的文本按钮