问题标签 [linq-method-syntax]

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 回答
1994 浏览

c# - LINQ - 方法与查询语法差异

我正在使用 DataTable 并注意到 Resharper 建议我可以将循环转换为 LINQ 表达式。我这样做了,它被重写为查询表达式语法(简化):

就个人而言,我更喜欢方法语法,因此将其重写为:

它坏了。

“System.Data.DataRowCollection”不包含“Select”的定义,并且找不到接受“System.Data.DataRowCollection”类型的第一个参数的扩展方法“Select”(您是否缺少 using 指令或程序集引用?)

既然查询表达式被翻译成方法调用,为什么第一个有效而第二个无效?我希望两者都起作用或都不起作用,显然情况并非如此。

0 投票
2 回答
160 浏览

linq - 使用 LINQ 方法的 NavigationProperty 实体框架简单过滤器

我正在学习 EF 和 LINQ to EF。我们使用的是 LINQ 方法而不是 LINQ 表达式。

我正在尝试从我的 2 个实体中进行非常简单的查询。

NavigationGroup 是与 NavigationGroupLocation 的一对多关系。NavigationGroup 中的导航属性称为“NavigationGroupLocations”

在我看来,这段代码应该可以工作:

Location 是我的 NavigationGroupLocation 实体中的一个 int。

有人可以解释为什么这不起作用以及通过导航属性过滤的正确方法是什么?我在表达式语法中看到了很多示例,但似乎无法将其与方法语法相关联。

我正在使用 C# 4 和 EF 4。

谢谢您的帮助!

编辑

我看到,由于我的导航属性是一个集合,我无法访问单个属性。所以我正在尝试这段代码:

当我尝试运行它时,我收到此错误:

我应该做什么?

0 投票
1 回答
1954 浏览

linq - 转换为值类型“十进制”失败,因为具体化值为 null

我有以下代码:

我理解错误,有时产品已售出 0 次,因此 .Sum(s => s.Quantity) 返回空值。我知道我可以使用??0 如果满足该条件,但在 Linq 方法语法中表达该条件的最优雅方式是什么?

0 投票
1 回答
1877 浏览

c# - 使用 LEFT JOIN 到 LINQ 表达式语法的多个连接语句

我有一个稍微复杂的 SQL 查询,我正在尝试将其转换为 LINQ 表达式语法,因为这是我们用于代码库的语法。不过,网上的每个人似乎都使用查询语法,这使得找到正确答案变得相当困难。

查询如下,并准确返回我所追求的(可能有更好的方法来做这个查询,请随时提出建议);

问题是转换这个。到目前为止,我所拥有的是;

我从互联网上提取的...老实说,我 100% 不理解查询,但它得到了 Entity who's Position has a Requirement,这就是它的意思。

所以最后,如果有人可以帮助我转换 SQL 语句的其余部分,将不胜感激。

0 投票
3 回答
2697 浏览

c# - LINQ 按日期分组 - 包括空天而不使用连接

使用 C#、NHibernate、NHibernate 到 LINQ。使用 NHibernate to LINQ,我没有 JOIN 功能。我也不能使用 QueryOver。

我有一个 LINQ 查询来计算潜在客户和销售额的数量。此表仅在新的潜在客户或销售完成时创建,因此有时不会插入任何行。执行以下查询有效

但有些日期不在那里(有 0 个潜在客户和销售的日期)。

如何在不使用连接的情况下包含这些日期并让他们设置 LeadsCount = 0 和 SalesCount = 0?

编辑:

有效的最终结果:

0 投票
3 回答
8505 浏览

c# - 无法隐式转换类型'System.Collections.Generic.List' 到 'System.Linq.IQueryable'

此查询正在编译且没有错误:

向上述查询添加条件 where 子句时会返回编译时类型转换错误:

无法将类型隐式转换System.Collections.Generic.List<AnonymousType#1>System.Linq.IQueryable<AnonymousType#2>

我错过了什么?

0 投票
1 回答
152 浏览

c# - 从 lambda(方法)语法转换为查询语法 (LINQ)

怎么可能翻译

查询语法?现在我有一些愚蠢的东西,我不知道如何让它工作。是这样的吗?

我知道缺少很多东西,但我被困在这一点上。我尝试了在堆栈上推荐的工具 - http://www.linqpad.net/,但这只能从查询语法转换为方法语法。

感谢您提供任何帮助或指导如何完成这项工作。一些有用的手册页也将不胜感激,现在我只使用http://code.msdn.microsoft.com/101-LINQ-Samples-3fb9811b

0 投票
1 回答
191 浏览

c# - 我可以将此查询语法 linq 表达式转换为方法语法吗?

我已经编写了这段代码来从 sql server 将两个表连接在一起,现在我想把它写成方法语法。我怎样才能重写这段代码?

0 投票
1 回答
124 浏览

c# - 如何使用 except 返回自定义对象

我正在使用 ASP.NET MVC、C# 和 SQL Server。

我想获得在特定日期内可供出租的汽车列表,即。还没出租。

我现在得到的类似于从汽车表中取出所有汽车,除了在指定日期有订单的汽车(而不是单独检查每辆汽车的订单):

问题是我想返回一个自定义对象,我不确定如何使用 except,所以我总是可以获取 ID,并基于 ID 使用不同的方法/查询获取整个对象。

但我想得到类似的东西:

0 投票
1 回答
943 浏览

c# - linq 将查询语法转换为方法语法

如何将此查询语法转换为 linq 中的方法语法:

哪种方法更好?我更喜欢这种查询方法,但我被要求使用在我看来过于臃肿的方法语法。