c# - 在 LINQ 查询期间提供用户反馈

标签 c# winforms multithreading linq

我有几个 LINQ 查询,它们将根据各种过滤器搅动记录(最多一百万条),并根据生成的过滤行项目上特定列的值修改控件。我想实现线程,但我正在使用 LINQ 执行查询,而查询本身就是延迟的来源,所以我相信进度条会立即从 0 % 跳到 100 %。有没有办法克服这个问题?

一个具体的例子是 Windows 窗体 ComboBox Items 是根据用户从另一个 ComboBox 选择的特定列的不同值填充的。这些项目用于动态构建另一个 linq 查询,用于自定义动态图表工具。

最佳答案

使用SkipTake 一次只加载几条记录。如果您提前获得了 Count,则可以在每次查询完成后推进进度条。您将需要在后台线程中执行所有这些操作以保持 UI 响应,以便进度条显示更新。

关于c# - 在 LINQ 查询期间提供用户反馈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9200492/

相关文章:

java - 我正在尝试从不同的 URL 获取数据,然后在后台加载

c# - 根据另一个下拉列表填充下拉列表

c# - 在 asp.net core 中使用 JavaScript Client 在 Identity Server 4 中获取范围验证错误

c# - 使多行文本框容纳更多文本(C#、w​​inform)

c++ - 为什么单个线程比多个线程更快,即使它们本质上具有相同的开销?

Python - 在多处理中使用线程

C# WCF 将列表类型作为对象返回时发生异常

c# - 用C#编程IBM iSeries API QUSLSPL

.net - 如何避免成千上万的不必要的ListView.SelectedIndexChanged事件?

c# - 什么是用于在 Windows 窗体中重新/绘制大型图形内容的好控件?