问题标签 [linq-to-objects]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
13222 浏览

c# - 将字符串列表转换为单个连接字符串的最快方法?

我有一些生成字符串列表的 LINQ 代码,如下所示:

如何将该字符串列表转换为一个大的串联字符串?假设数据有这些条目:

我应该得到一个看起来像这样的字符串:

我怎样才能快速做到这一点?我想过这个:

但这似乎不对。如果这是正确的解决方案,我将如何将其转变为扩展方法?

0 投票
2 回答
2960 浏览

c# - 如何在应用程序状态中存储 List ~ Array (C# ASP.net MVC)

我正在尝试将一些数据粘贴到应用程序中,这样我就可以构建一个公共字符串 get + linq 查询,以便在我需要它们时只提取我想要的位。

我只是在努力存储它,然后我将如何将它拉回来以便我可以查询它......

0 投票
2 回答
20807 浏览

c# - LINQ - 使用 OrderBy EnumValue 和联合结果集对对象列表进行排序?

问候!我想使用 LINQ 查询对象列表并按枚举值、字符串值对它们进行排序,然后将列表的其余部分以类似的方式排序 LINQ 新手在这里,所以要温柔。

我创建了这些对象的列表,并希望对它们进行可变排序,以便所有具有 Enum.EnumValue[X] 的项目首先显示在列表中,按名称排序,然后是所有其他以类似方式排序的项目(几乎像 Union SQL 中的结果集)

那里有任何大师有一些 LINQ 魔术可以分享吗?

谢谢!

0 投票
1 回答
732 浏览

c# - 处理 LINQ / HttpContext.Application & WebServices

我有以下函数 + 代码来解析和查询 Web 服务请求,然后理论上将结果存储在应用程序中(因为它每天只需要刷新一次,幸运的是当应用程序刷新时)。

这个位工作正常

**理想情况下,我想将其从 appmemory 中拉出,这样我就可以访问数据,这是我尝试各种(可能是愚蠢的)方法来使用信息的地方。只是把它拔出来就会引起我的问​​题:o( **


回答为标记(删除 .AsQueryable() ) 快速示例

只是为了使它成为一个冗长的答案,一种重新查询和显示结果集的快速方法......

希望对某人有用。

0 投票
2 回答
6496 浏览

asp.net-mvc - 如何在 Linq Query 中执行 If 语句

我目前有一个包含以下内容的列表

这是一组扁平的链接数据(基本上是我存储的联合搜索的结果)

MVC 路由只会传递一个字符串,然后我需要将其与 heirachy 中正确级别的数据进行匹配。所以我试图查询 CountryStr 然后如果它不产生结果,那么该区域然后是该区域;但我需要做一些查询,例如......

我目前看到的唯一方法是分别运行每个查询,然后检查哪些返回值并使用那个。我希望有一个更聪明,更清洁的方法。

0 投票
4 回答
5400 浏览

c# - 组内的 LINQ-to-objects 索引 + 用于不同的分组(又名 ROW_NUMBER 与 PARTITION BY 等效)

经过大量的谷歌搜索和代码实验,我被一个复杂的 C# LINQ-to-objects 问题难住了,在 SQL 中,使用一对 ROW_NUMBER()...PARTITION BY 函数和一个或两个子查询很容易解决这个问题。

换句话说,这就是我在代码中尝试做的事情——基本要求是从列表中删除重复的文档:

  1. 首先,按 (Document.Title, Document.SourceId) 对列表进行分组,假设(简化的)类定义如下:
    /li>
  2. 在该组中,为每个文档分配一个索引(例如,索引 0 == 此来源中具有此标题的第一个文档,索引 1 = 此来源中具有此标题的第 2 个文档等)。我喜欢 SQL 中的 ROW_NUMBER() 等价物!

  3. 现在按 (Document.Title, Index) 分组,其中 Index 是在步骤 #2 中计算的。对于每个组,仅返回一个文档:具有最低 Document.SourceId 的文档。

第 1 步很简单(例如 codepronet.blogspot.com/2009/01/group-by-in-linq.html),但我对第 2 步和第 3 步感到困惑。我似乎无法构建一个无红色曲线的 C# LINQ 查询来解决所有三个步骤。

Anders Heilsberg 在此线程上的帖子是我认为如果我能正确使用语法,那么上面的步骤 #2 和 #3 的答案。

我宁愿避免使用外部局部变量来进行索引计算,如 slodge.blogspot.com/2009/01/adding-row-number-using-linq-to-objects.html 上所建议的那样,因为该解决方案会中断如果外部变量被修改。

最佳情况下,可以先完成按标题分组的步骤,因此“内部”分组(首先按 Source 计算索引,然后按 Index 过滤重复项)可以对每个“按标题”中的少量对象进行操作组,因为每个按标题组中的文档数通常低于 100。我真的不想要 N 2解决方案!

我当然可以使用嵌套的 foreach 循环来解决这个问题,但这似乎是使用 LINQ 应该很简单的问题。

有任何想法吗?

0 投票
1 回答
485 浏览

linq - 我可以从 LINQ 对象中执行 LINQ to SQL 查询吗?

我目前有一个 LINQ 查询作为我的 DataContext 类的方法实现。此方法计算用户对 Wiki/CMS 中的页面的权限。我想做的是将此方法重新定位到 Page 和 User LINQ 数据对象。

但是,当我将此查询移动到单个数据对象时,它使用 LINQ to Objects 而不是 LINQ to SQL 执行。这意味着它每次执行时都会从数据库服务器中提取几个完整的集合。

这是使用 LINQ to Objects 的代码片段。我希望这个使用 LINQ to SQL:

这是使用 LINQ to SQL 的代码片段。我宁愿在 WikiPage 类上使用此方法,而不是 DataContext:

从 DataContext 运行 LINQ 查询时,它作为 LINQ to SQL 执行,但从 WikiPage LINQ 对象运行时,它作为 LINQ to Objects 运行。我的语法在这里有问题,还是 LINQ 根本不可能?

0 投票
1 回答
114 浏览

linq - SQL 到 Linq 的转换

我有如下的sql

转换为 LINQ ..... 击中 ???

有没有其他的好方法来做到这一点。

谢谢

0 投票
4 回答
32706 浏览

c# - LINQPad 如何引用其他类,例如 LINQ in Action 示例中的 Books

我正在使用 LINQPad 在我正在构建的应用程序中创建 LINQ 查询。

我注意到在下载的LINQ in Action示例中,例如示例 4.04,intellisense 显示了一个类“书籍”,但我在 LINQPad 工具中没有看到任何引用或“使用”语句,这里是示例:

在“LinqBooks.Common, Business Objects, Book.linq ”中似乎定义了类:

但是这是如何工作的,以便我可以在我的类中复制并使用 LINQPad 快速构建 LINQ 语句,然后我可以将它们复制回我的应用程序中?

0 投票
9 回答
34411 浏览

c# - 用 LINQ 替换嵌套的 foreach;修改和更新内部深处的属性

考虑在5 或 6 层深的对象的一个​​或多个属性上更改数据成员的要求。

有一些子集合需要迭代才能到达需要检查和修改的属性。

在这里,我们调用了一个清除 Employee 街道地址的方法。由于我们在循环中更改数据,当前的实现需要一个for循环来防止异常:

无法分配给“someVariable”,因为它是“foreach 迭代变量”

foreach这是带有嵌套和 a的当前算法(混淆)for

问题: 可以使用 LINQ 重新实现此算法吗?要求是原始集合的数据由该静态方法调用更改。

更新:我正在考虑/倾向于 jQuery/选择器类型的解决方案。我没有用那种方式专门提出这个问题。我意识到我在这个想法上太过分了(没有副作用)。谢谢大家!如果有这样的方法来执行类似 jQuery 的选择器,请让我们看看吧!