首页 > 解决方案 > 使用 LINQ 从数据表中的序列中选择最大值和最小值

问题描述

我正在尝试使用 LINQ 查询从数据表中获取最大值。  

var maxVal  =(from rowmax in datatable.AsEnumerable()
               where rowmax.Field<string>(column name A)=="1000"
               && rowmax.Field<string>(column name B)=="36"
              select rowmax.Field<string>(column name C)).Max();

我在 C 列中有小于这些数字的值,例如(154.93445、142.05789、110.45632 和 94.34623 等)。但是当我对 MAX 进行上述查询时,我得到 94.34623 但不是 154.93445。我想获取最大数字 154.93445。

请提出我做错了什么。

标签: c#linqdatatable

解决方案


Max 是在字符串而不是数字上调用的,您需要进行某种从字符串到浮点类型的转换。


推荐阅读