Questions tagged «linq»

语言集成查询(LINQ)是Microsoft .NET Framework组件,它向.NET语言添加了本机数据查询功能。请考虑在适当的时候使用更详细的标签,例如[linq-to-sql],[linq-to-entities] / [entity-framework]或[plinq]

2
“折叠” LINQ扩展方法在哪里?
我在MSDN的Linq样本中发现了一个我想使用的名为Fold()的整洁方法。他们的例子: double[] doubles = { 1.7, 2.3, 1.9, 4.1, 2.9 }; double product = doubles.Fold((runningProduct, nextFactor) => runningProduct * nextFactor); 不幸的是,无论是在示例中还是在我自己的代码中,我都无法对此进行编译,并且在MSDN中找不到其他提及此方法的地方(例如Enumerable或Array扩展方法)。我得到的错误是一个普通的旧“不知道该错误”错误: error CS1061: 'System.Array' does not contain a definition for 'Fold' and no extension method 'Fold' accepting a first argument of type 'System.Array' could be found (are you missing a …

5
如何使用LINQ将List <string>中的所有字符串转换为小写?
我昨天在StackOverflow上的其中一个响应中看到了一个代码片段,这引起了我的兴趣。就像这样: List&lt;string&gt; myList = new List&lt;string&gt; {"aBc", "HELLO", "GoodBye"}; myList.ForEach(d=&gt;d.ToLower()); 我希望可以使用它将myList中的所有项目转换为小写。但是,这不会发生...运行此命令后,myList中的大小写不变。 所以我的问题是,是否有一种方法可以使用LINQ和Lambda表达式以类似的方式轻松地遍历和修改列表的内容。 谢谢,马克斯
94 c#  linq  lambda  foreach 

11
结合多个元素集合的优雅方式?
假设我有任意数量的集合,每个集合都包含相同类型的对象(例如List&lt;int&gt; foo和List&lt;int&gt; bar)。如果这些集合本身是一个集合(例如类型)List&lt;List&lt;int&gt;&gt;,则可以SelectMany将它们全部组合成一个集合。 但是,如果这些集合不在同一个集合中,给我的印象是我必须编写这样的方法: public static IEnumerable&lt;T&gt; Combine&lt;T&gt;(params ICollection&lt;T&gt;[] toCombine) { return toCombine.SelectMany(x =&gt; x); } 然后我会这样称呼它: var combined = Combine(foo, bar); 是否有一种干净,优雅的方式来组合(任意数量)集合,而不必编写上述实用程序方法Combine?看起来很简单,应该可以在LINQ中做到这一点,但也许不是。


3
LINQ中的Include()有什么作用?
我尝试进行了大量研究,但我更像是数据库专家-因此,即使MSDN中的解释对我也没有任何意义。谁能解释一下,并提供一些示例Include()说明在SQL查询期间执行什么语句?
93 sql  linq 

4
LINQ在On子句中具有多个条件的联接
我正在尝试在LINQ中实现查询,该查询在ON子句中使用具有多个条件的左外部联接。 我将使用以下两个表的示例Project(ProjectID,ProjectName)和Task(TaskID,ProjectID,TaskName,已完成)。我想查看所有项目的完整列表以及它们各自的任务,但只能看到已完成的那些任务。 我无法使用过滤器,Completed == true因为这将过滤掉所有未完成任务的项目。相反,我想添加Completed == true到联接的ON子句中,以便显示完整的项目列表,但仅显示已完成的任务。没有完成任务的项目将显示一行,且Task的值为空。 这是查询的基础。 from t1 in Projects join t2 in Tasks on new { t1.ProjectID} equals new { t2.ProjectID } into j1 from j2 in j1.DefaultIfEmpty() select new { t1.ProjectName, t2.TaskName } 如何添加&amp;&amp; t2.Completed == trueon子句? 我似乎找不到有关如何执行此操作的任何LINQ文档。
93 linq  join 

13
条件Linq查询
我们正在研究日志查看器。使用时可以选择按用户,严重性等进行过滤。在Sql天内,我将添加到查询字符串中,但是我想使用Linq进行过滤。如何有条件地添加子句?

6
在MatchCollection上使用LINQ扩展方法语法
我有以下代码: MatchCollection matches = myRegEx.Matches(content); bool result = (from Match m in matches where m.Groups["name"].Value.Length &gt; 128 select m).Any(); 有没有办法使用LINQ扩展方法语法来做到这一点? 像这样: bool result = matches.Any(x =&gt; ... );
92 c#  linq 

4
如何从Action()返回值?
关于将DataContext传递到Action()的问题的答案,如何从action(db)返回值? SimpleUsing.DoUsing(db =&gt; { // do whatever with db }); 应该更像: MyType myType = SimpleUsing.DoUsing&lt;MyType&gt;(db =&gt; { // do whatever with db. query buit using db returns MyType. });
92 c#  .net  linq 

10
C#-使用属性名称作为字符串按属性排序的代码
当属性名称为字符串时,对C#中的属性进行编码的最简单方法是什么?例如,我想允许用户通过他们选择的属性(使用LINQ)对某些搜索结果进行排序。他们将在UI中选择“ order by”属性-当然是字符串值。有没有一种方法可以直接使用该字符串作为linq查询的属性,而不必使用条件逻辑(如果/否则,切换)将字符串映射到属性。反射? 从逻辑上讲,这就是我想要做的: query = query.OrderBy(x =&gt; x."ProductId"); 更新:我最初没有指定我正在使用Linq to Entities-看来反射(至少是GetProperty,GetValue方法)不能转换为L2E。

3
如何确保FirstOrDefault <KeyValuePair>返回了一个值
这是我正在尝试做的简化版本: var days = new Dictionary&lt;int, string&gt;(); days.Add(1, "Monday"); days.Add(2, "Tuesday"); ... days.Add(7, "Sunday"); var sampleText = "My favorite day of the week is 'xyz'"; var day = days.FirstOrDefault(x =&gt; sampleText.Contains(x.Value)); 由于字典中不存在“ xyz”,因此FirstOrDefault方法将不会返回有效值。我希望能够检查这种情况,但是我意识到我无法将结果与“ null”进行比较,因为KeyValuePair是一个结构。以下代码无效: if (day == null) { System.Diagnotics.Debug.Write("Couldn't find day of week"); } 我们您尝试编译代码,Visual Studio引发以下错误: Operator '==' cannot …
91 c#  linq 

3
“ LINQ to Entities”,“ LINQ to SQL”和“ LINQ to Dataset”之间有什么区别
我已经在LINQ工作了很长时间了。但是,提到的LINQ口味之间的真正区别是什么仍然是个谜。 成功的答案将包括它们之间的简短区别。每种口味的主要目标是什么,好处是什么,并且对性能有影响吗? PS:我知道那里有很多信息源,但是我正在寻找一种“备忘单”,它指示新手去往特定目标的方向。
91 c#  sql  linq  dataset  entities 


4
什么是SQL Server Profiler中的“审核注销”?
我正在运行数据导入(使用C#/ Linq),自然地,我试图尽可能地优化查询。为此,我正在使用SQL Server Profiler在数据库上运行跟踪,并通过SQL登录名(该名称可以唯一地归因于我的数据导入过程)过滤跟踪。 奇怪的是,我的大多数SQL语句都非常快:)-很少有查询甚至突破1ms的标记。但是在我所有的查询之间都隔开几行,其中EventClass是“ Audit Login”或“ Audit Logout”-“ Audit Logout”的持续时间可能长达一分钟! 这与我在导入中使用交易记录有关吗?如果是这样,有什么方法可以找到哪些是最热门的查询,以便我清理这些查询?


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.