草庐IT

LINQ_ENABLED

全部标签

c# - 如何在 NHibernate Linq 查询中执行不区分大小写的字符串?

如何在NHibernateLinq查询中进行不区分大小写的where?例如//notethisonedoesn'tworkiftheentryindatabasehaslowercaseq=>q.Where(entity=>entity.CaseInsensitiveField==DesiredField.Trim().ToUpper()) 最佳答案 试试这个:q=>q.Where(entity=>entity.CaseInsensitiveField.ToUpper()==DesiredField.Trim().ToUpper()

c# - LINQ-to-SQL:返回单个标量值的存储过程?

我正在将LINQ-to-SQL用于查询遗留数据库的应用程序。我需要调用一个存储过程,它选择一个整数值。更改存储过程不是一种选择。设计者用这个签名创建了一个方法:privateISingleResultNextRowNumber([Parameter(DbType="Int")]System.Nullableincrement,[Parameter(DbType="Char(3)")]stringdataset)我希望返回类型是int。我如何使用LINQ-to-SQL执行此操作? 最佳答案 对于标量函数(UDF)而不是SP,这将是微不

c# - 在 LINQ 中列出列

给定一个IEnumerable和行数,我想将其转换为IEnumerable>像这样:输入:RowCount:3List:[1,2,3,4,5,6,7]输出[[1,4,7][2,5][3,6]]编辑我希望这适用于任何IEnumerable,而不依赖于T是Int32。如何使用LINQ执行此操作? 最佳答案 这样做就可以了:varlist=newList{1,"two",3,4,5,6,7};intcount=3;varrows=list.Select((item,index)=>new{Item=item,Index=index}).G

c# - 何时使用 LINQ 的 .ToList() 或 .ToArray()

运行这段代码后:varinput=newList(...);varresult=input.Select(t=>newU(t));Ufirst1=null;foreach(Uu1inresult)if(first1==null)first1=u1;Ufirst2=null;foreach(Uu2inresult)if(first2==null)first2=u2;然后'first1==first2'评估为false,即使两个U包装相同的T。我还没有测试它,但我认为它可以通过链接.ToList()或.ToList()来评估为true。ToArray()到Select()调用上。在实际代码

c# - Linq:如何从集合中查询项目直到总和达到某个值

给定以下对象:publicclassProduct{stringName{get;}intQuantity{get;}}使用Linq,我将如何查询List直到我得到一笔款项>=给定的数量?换句话说,如果我的列表看起来像NameQuantity-----------------prod15prod26prod77我想查询列表并拉取实例,直到得到总和>=8.在这种情况下,我会得到列表中的前两项。如果我想要总和>=12,我会得到所有三个。我知道我可以编写一个循环来为我做这件事,但我幻想有一些巧妙的单行代码使用Linq来实现同样的事情。谢谢 最佳答案

c# - 将 LINQ 序列中的项目发送到返回 void 的方法

当我处理LINQ序列时,我常常想将每个项目发送到一个返回void的方法,避免foreach循环。但是,我还没有找到一种优雅的方法来做到这一点。今天,我写了以下代码:privateStreamWriter_sw;privatevoidstreamToFile(Listerrors){if(_sw==null){_sw=newStreamWriter(Path.Combine(Path.GetDirectoryName(_targetDatabasePath),"errors.txt"));}FuncwriteSelector=(e)=>{_sw.WriteLine(getTabDelim

c# - 在 LINQ c# 中查询项目列表

我对LINQ有点陌生,这是我的问题。我有一个项目list我喜欢获取存在于只有一个列表(如果我能得到他们没有的名单重申通过“名单列表”,那就太好了)。我尝试在Linq查询中使用Aggregate/Except/Group关键字但没有成功,但到目前为止还没有接近解决方案。[编辑]例如可以是List>并且int的值不在其他列表中的条件。老实说,如果我尝试了几个foreach我成功地找到了有值(value)的项目,但是当我尝试学习LINQ时,我想知道我应该编写什么样的查询来获得结果例如1,2,61,63,55,103,10,6将返回2和第一个列表 最佳答案

c# - 使用 linq 查询集合的子集合

我有一个产品集合,每个产品对象都有自己的ProductImages集合。每个ProductImage对象都有一个IsMainImagebool字段。我很难像这样构建Linq查询:selectproducts.productimages.imagenamewhereproducts.productid==1andproduct.productimages.ismainimage==true任何人都可以帮我解决这个问题,给我指出一个在线资源,在那里我可以学习如何编写这样的linq查询,或两者兼而有之?感谢您的帮助! 最佳答案 尝试类似的

c# - Linq 按字母顺序排序

我有一个产品表,想要按字母顺序对数据进行排序。但是当我写这个查询时,他们仍然通过id来。我在谷歌中查看了很多页面,但找不到任何来源。varproduct=Db.tablename.Where(s=>s.colum==DropDownList2.SelectedValue).OrderBy(s=>s.Name); 最佳答案 这个查询varproduct=Db.tablename.Where(s=>s.colum==DropDownList2.SelectedValue).OrderBy(s=>s.Name);在被要求之前不会被执行。因

c# - LINQ Lambda 与查询语法性能

我今天在我的项目中看到了一个LINQ查询语法,它正在计算List中具有特定条件的项目,如下所示:inttemp=(fromAinpTaskswhereA.StatusID==(int)BusinessRule.TaskStatus.PendingselectA).ToList().Count();我想通过使用Count(Func)重写它来重构它以使其更具可读性。我认为这在性能方面也会很好,所以我写道:intUnassignedCount=pTasks.Count(x=>x.StatusID==(int)BusinessRule.TaskStatus.Pending);但是当我使用Sto