c# - 尝试从数据集中获取列时出现异常 "Enumeration has either not started or has already finished"

标签 c# linq-to-sql

我正在尝试使用 linq 过滤数据集。它工作正常

问题:

但我尝试从中获取专栏,它给了我那个异常(exception)

枚举尚未开始或已经完成。

这是我的代码:

foreach (string columnName in SelectedItems)
                {
                    var Rate = (from dr in ds.Tables[0].AsEnumerable()
                                where dr.Field<double>(columnName) > greater && dr.Field<double>(columnName) < less
                                select new
                                {
                                    rate = dr.Field<double>(columnName)

                                }.rate).ToList();
                    if (Rate.Count > 50)
                    {
                        var avg = Rate.CheckRateValue();

                    }


                    i++;
                }

我在网上搜索并发现了 dr.Field(columnName) 必须一次性使用的问题。那么我如何在从选择新部分跳过此代码后从 linq 查询中获取列。

最佳答案

我不确定是您的实际问题,但您可以尝试:

var rates = (from dr in ds.Tables[0].AsEnumerable()
             let rate = dr.Field<double>(columnName)
             where rate > greater && rate < less
             select rate).ToList();

关于c# - 尝试从数据集中获取列时出现异常 "Enumeration has either not started or has already finished",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10635091/

相关文章:

javascript - 如何在javascript中动态获取html表格数据值

c# - 使用 OwnsOne() 时,“FromSqlRaw 或 FromSqlInterpolated 是使用不可组合的 SQL 调用的,并在其上组合了一个查询”

linq - TransactionScope、linq 和奇怪的事务管理器问题(HRESULT : 0x8004D024)

sql - 如何在 LINQ 中设置结果集的返回类型

c# - 使用 LINQ to SQL 执行更新/设置

linq-to-sql - 如何使 POCO 在 DDD 中与具有复杂关系的 Linq-to-SQL 一起工作

c# - 在 SQL Server(C# 客户端)中批量插入大量数据的最快方法是什么

c# - 无法在 Visual Web Developer 中找到图像文件夹

c# - 从资源以编程方式设置 WPF 图像

c# - 在 C# 中使用 LINQ 自动递增通用列表