gpt4 book ai didi

c# - 求和 Entity Framework 中两列的差异

转载 作者:行者123 更新时间:2023-11-30 21:19:14 27 4
gpt4 key购买 nike

我正在尝试计算两列之差的总和:

var result = model.TableExample
.Where(condition here)
.Select(s => s.Column1 - s.Column2)
.Sum();

但它正在上升异常:

Index and length must refer to a location within the string

这个我看不懂。任何地方都没有字符串,模型和数据库中的列是整数。有什么问题吗?

我正在使用 MySql 提供程序。

最佳答案

看起来像是 MySQL Linq 提供程序中的错误...错误可能来自提供程序中的内部字符串操作。

您可以尝试通过检索行并计算内存中的总和来解决它,如下所示:

var result = model.TableExample
.Where(condition here)
.Select(s => s.Column1 - s.Column2)
.AsEnumerable()
.Sum();

或者这个:

var result = model.TableExample
.Where(condition here)
.AsEnumerable()
.Sum(s => s.Column1 - s.Column2);

请注意,如果有很多行,性能会受到影响,因为这段代码会获取每一行,而不是只获取总和。

关于c# - 求和 Entity Framework 中两列的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3877399/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com