c# - 如何在数据行 [] 的列中找到最大值?

标签 c# ienumerable max datarow icomparable

我有一个简单的问题,但我只是不理解我在此处或 MSDN 中找到的任何示例。 (我对 C# 和所有数据集函数还是陌生的)。

我有一个数据表“tblRoom”,它的列是“building”,“apartment”和“room”,它们都是整数和表的主键(它是 apartment 的弱实体(这是 building 的弱实体) 没有其他属性/列)。

我还有 DataRow[] roomCollection 使用此代码选择建筑物中的特定公寓:

roomCollection = dbDataSet.tblRoom.Select("building ='"+ b_int + 
                                          "' and apartment='"+ a_int + "'");

所有这些都运行良好(我猜……)。 现在我想从这间公寓获得房间的最大值(这间公寓的最大房间号)。 我试过这些代码无济于事:

DataRow dr = roomCollection.Max();
int maxi = roomCollection.Max();

我只是没有从工具提示中得到我应该在函数中写什么。它在没有 IEnumerable 或 Icomparable 时抛出异常。

我需要写什么来获得房间列中的最大值(int)?任何人都知道向白痴解释它的“[something] for dummies”,因为我不明白我想在 Max() 中写什么的错误/工具提示的含义。

编辑: 工具提示建议输入这些(显示相关):

(this IEnumerable <DataRow> source):DataRow
(this IEnumerable <DataRow> source, Func<DataRow,int?> selector):int?
(this IEnumerable <DataRow> source, Func<DataRow,int> selector):int

我真的不明白:(

谢谢, 谢伊。

最佳答案

尝试

int roomno = roomCollection.Max (r => (int) r["room"]);

关于c# - 如何在数据行 [] 的列中找到最大值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6885169/

相关文章:

c# - 当源和目标是同一个数组时,Array.Copy 是否安全?

c# - 在哪些情况下我需要为 IEnumerable 和 IQueryable 创建两种不同的扩展方法?

c# - 如何从 IEnumerable 创建多维数组

python - 如何打印导致函数最大值的变量值?

mysql - 仅选择具有其他唯一列的特定记录的最高值?

python - SciPy - 点积在稀疏和密集矩阵上的推广

c# - 如何为 DataGrid WPF 创建复杂的过滤器

c# - 使 ListView 在垂直方向上可滚动

c# - 减少保存在 View 状态属性中的代码行

C# 如何使用 .OrderBy 处理多列并将列号解码为列名?