草庐IT

Linq2XSD

全部标签

c# - 基于表的一个字段在 Linq 中区分

我正在尝试在Linq中使用.distinct来根据表的一个字段获取结果(因此不需要表中的整个重复记录)。我知道使用distinct编写基本查询如下:varquery=(fromrintable1orderbyr.Textselectr).distinct();但我需要r.text不重复的结果。 最佳答案 试试这个:table1.GroupBy(x=>x.Text).Select(x=>x.FirstOrDefault());这将按Text对表格进行分组,并使用每个组中的第一行,从而生成Text不同的行。

c# - LINQ 语句是否比 'foreach' 循环更快?

我正在编写一个网格渲染管理器,我认为将使用相同着色器的所有网格分组,然后在我处于该着色器channel中时渲染它们是个好主意。我目前正在使用foreach循环,但想知道使用LINQ是否可以提高性能? 最佳答案 为什么LINQ应该更快?它还在内部使用循环。大多数时候,LINQ会有点慢,因为它引入了开销。如果您非常在意性能,请不要使用LINQ。使用LINQ是因为您想要更短、更易读和更易于维护的代码。 关于c#-LINQ语句是否比'foreach'循环更快?,我们在StackOverflow上

c# - LINQ 语句是否比 'foreach' 循环更快?

我正在编写一个网格渲染管理器,我认为将使用相同着色器的所有网格分组,然后在我处于该着色器channel中时渲染它们是个好主意。我目前正在使用foreach循环,但想知道使用LINQ是否可以提高性能? 最佳答案 为什么LINQ应该更快?它还在内部使用循环。大多数时候,LINQ会有点慢,因为它引入了开销。如果您非常在意性能,请不要使用LINQ。使用LINQ是因为您想要更短、更易读和更易于维护的代码。 关于c#-LINQ语句是否比'foreach'循环更快?,我们在StackOverflow上

c# - Linq:GroupBy、Sum 和 Count

我有一个产品系列publicclassProduct{publicProduct(){}publicstringProductCode{get;set;}publicdecimalPrice{get;set;}publicstringName{get;set;}}现在我想根据产品代码对集合进行分组,并返回一个对象,其中包含每个代码的名称、数量或产品以及每个产品的总价。publicclassResultLine{publicResultLine(){}publicstringProductName{get;set;}publicstringPrice{get;set;}publicstr

c# - Linq:GroupBy、Sum 和 Count

我有一个产品系列publicclassProduct{publicProduct(){}publicstringProductCode{get;set;}publicdecimalPrice{get;set;}publicstringName{get;set;}}现在我想根据产品代码对集合进行分组,并返回一个对象,其中包含每个代码的名称、数量或产品以及每个产品的总价。publicclassResultLine{publicResultLine(){}publicstringProductName{get;set;}publicstringPrice{get;set;}publicstr

c# - 从 Linq 到 Sql 的随机行

当我有条件时,使用LinqtoSQL检索随机行的最佳(和最快)方法是什么,例如某些字段必须为真? 最佳答案 您可以在数据库中使用伪造的UDF执行此操作;在分部类中,向数据上下文添加一个方法:partialclassMyDataContext{[Function(Name="NEWID",IsComposable=true)]publicGuidRandom(){//toprovenotusedbyourC#code...thrownewNotImplementedException();}}然后只需按ctx.Random()排序;这

c# - 从 Linq 到 Sql 的随机行

当我有条件时,使用LinqtoSQL检索随机行的最佳(和最快)方法是什么,例如某些字段必须为真? 最佳答案 您可以在数据库中使用伪造的UDF执行此操作;在分部类中,向数据上下文添加一个方法:partialclassMyDataContext{[Function(Name="NEWID",IsComposable=true)]publicGuidRandom(){//toprovenotusedbyourC#code...thrownewNotImplementedException();}}然后只需按ctx.Random()排序;这

c# - 如何只选择 LINQ 中日期最高的记录

我有一个表“lasttraces”,其中包含以下字段。Id,AccountId,Version,DownloadNo,Date数据如下所示:28092|15240000|1.0.7.1782|2009040004731|2009-01-2013:10:22.00028094|61615000|1.0.7.1782|2009040007696|2009-01-2013:11:38.00028095|95317000|1.0.7.1782|2009040007695|2009-01-2013:10:18.00028101|15240000|1.0.7.1782|2009040004740|

c# - 如何只选择 LINQ 中日期最高的记录

我有一个表“lasttraces”,其中包含以下字段。Id,AccountId,Version,DownloadNo,Date数据如下所示:28092|15240000|1.0.7.1782|2009040004731|2009-01-2013:10:22.00028094|61615000|1.0.7.1782|2009040007696|2009-01-2013:11:38.00028095|95317000|1.0.7.1782|2009040007695|2009-01-2013:10:18.00028101|15240000|1.0.7.1782|2009040004740|

c# - Linq 中的 Enumerable.Zip 扩展方法有什么用?

Enumerable.Zip有什么用Linq中的扩展方法? 最佳答案 Zip运算符使用指定的选择器函数合并两个序列的相应元素。varletters=newstring[]{"A","B","C","D","E"};varnumbers=newint[]{1,2,3};varq=letters.Zip(numbers,(l,n)=>l+n.ToString());foreach(varsinq)Console.WriteLine(s);输出A1B2C3 关于c#-Linq中的Enumera