问题标签 [linq-extensions]

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 投票
1 回答
1141 浏览

join - 带有连接、组和计数的 Linq 查询(扩展格式)

我有一个表,它存储一些信息和引用(列 parent_ID)到同一个表中的父行。

我需要获取包含子记录计数的所有记录列表(使用 Linq 扩展格式)。这是为我提供所需信息的 SQL 查询

例子

结果应该是:

我试图至少让孩子数,但它不起作用......

这个查询不应该等同于这样的东西:

但它为每一行返回count = 1 ...

如何使用 linq 扩展格式进行这样的查询?

0 投票
4 回答
6074 浏览

c# - Expression.Equal - 如何比较 Nullable 和 Non Nullable 字段?

我有一个可以为空的datetime字段,我必须将string日期字段转换为可以为空的日期时间类型(使用Expression)....我使用下面的方法做到了这一点。

memberAccess(上面提到的)是成员表达式类型。(来自 LinqExtensions.cs) 现在在代码中我使用的是 Expression.Equal 方法。

这在这里失败,因为 memberaccess 类型可以为空,但 filter.type 不能为空...

即使我尝试使用将成员访问类型转换为可为空

类型是运行时而不是日期时间。

如何使用Expression.Equal比较可空和不可空字段?有没有办法将字符串类型转换为可为空的日期时间字段?其中任何一个都可以解决我的问题。

0 投票
1 回答
1179 浏览

c# - 将两个不同的 PredicateBuilder 与表达式相结合

我有一个谓词生成器,它工作正常

我现在正在尝试将约会中的条件拆分为另一个谓词构建器,以便我可以随时添加条件并重用该函数。

我曾尝试创建一个表达式,然后在主谓词构建器中使用它,但它失败了

更改了主要谓词以使用上述表达式

它显示一个错误

参数类型“ System.Linq.Expressions.Expression<System.Func<Appointment,bool>>”不可分配给参数类型System.Func<Appointment,bool>

我什至尝试过像 Expand 这样的 LinqKit 扩展方法,但可以找到解决方案。

也曾在 LINQ 中尝试过Reusable 谓词表达式,然后它在编译时没有显示任何错误,但是在应用程序端,它显示

用于查询运算符 ' Any' 的重载不受支持。

谁能帮我解决错误或提出替代解决方案。

0 投票
0 回答
153 浏览

c# - 在另一个 Linq 扩展调用中使用 Linq 扩展调用会引发异常

上面的代码抛出了一个空异常。

当我像下面的代码一样添加 ToList() 时,代码运行良好。

我不明白为什么。你能解释一下吗?

更多细节。TagandTaggroup 和 Taggroup 是数据库中的表。

第一个的 SelectAllQuery 是

在这种情况下,SelectAll() 是 TagandTaggroup 表。cid 是一个已经传递的值,因此它不为空。它里面有一个 int 。

在我们升级到 .Net4.5.1 之前,这一切正常。我不知道这是否与它有关。一个解释将不胜感激。

根据要求的堆栈跟踪。

0 投票
1 回答
163 浏览

c# - 无法理解如何编写 Func, T3>

我有这个方法:

这里 char 是要在文本中查找的字符,bool 确定是否找到该字符,int 返回该字符在文本中的索引。

我应该如何编写这段代码?谢谢。

0 投票
1 回答
210 浏览

c# - 如何为所有类型编写 linq 扩展方法?

我有我想写的这个方法:

为所有 TSource 类型编写此代码的最简单方法是什么?

编辑:黑熊写道,这已经适用于所有类型,但事实并非如此。Mono 是这样写的:

0 投票
0 回答
68 浏览

c# - 如何编写 linq 函数查询

这里有什么问题?它给出了一个异常“无法将 lambda 表达式转换为类型 'IRun',因为它不是委托类型”

0 投票
1 回答
208 浏览

c# - C# 合并列表

我想将 songDetails 和 savedSongs 的字段合并在一起。我该怎么做呢?我听说过,.Zip()但我不确定如何使用它。

编辑: songDetailssavedSongs有字符串字段:Category、AlbumName、BandName,但是在 songDetails 这些有数据。所以我想将这些非空数据字段与同一个索引中的 savedSongs 空字段合并。

0 投票
1 回答
156 浏览

c# - 用于 make join 的自定义 LINQ 扩展

假设我需要创建自定义表达式来使用IQueryable<x>and进行一些操作IQueryable<y>。遗憾的是,我不知道如何实现这一点。这是我的尝试:

或者说我需要这样的结果:

0 投票
2 回答
297 浏览

sql-server - 如何扩展加入不同id的3个表

SQL 内连接查询:

我正在尝试将此 SQL 转换为使用 EF 的扩展连接 3 个表: