草庐IT

LINQ_ENABLED

全部标签

c# - 如何将 Foreach 语句转换为 linq 表达式?

如何将下面的foreach转换成linq表达式?varlist=newList();foreach(varidinids){list.Add(newBook{Id=id});} 最佳答案 这很简单:varlist=ids.Select(id=>newBook{Id=id}).ToList();或者如果您更喜欢查询语法:varlist=(fromidinidsselectnewBook{Id=id}).ToList();另请注意ToList()仅当您确实需要List时才有必要.否则,通常最好利用Linq的惰性求值能力,并允许Booko

c# - 无法将类型为 'Newtonsoft.Json.Linq.JObject' 的对象转换为类型 <MyClass>

这段代码:varcommandMessage=newCommandMessage{CorrelationId=Guid.NewGuid()};varjson=JsonConvert.SerializeObject(commandMessage);varmyCommandMessage=(CommandMessage)JsonConvert.DeserializeObject(json);给出这个错误信息:Additionalinformation:Unabletocastobjectoftype'Newtonsoft.Json.Linq.JObject'totype'QueueConn

c# - Linq to objects - 选择第一个对象

我对linq几乎一无所知。我这样做:varapps=fromappinProcess.GetProcesses()whereapp.ProcessName.Contains("MyAppName")&&app.MainWindowHandle!=IntPtr.Zeroselectapp;这让我获得了符合该条件的所有正在运行的进程。但我不知道如何获得第一个。我在网上找到的例子似乎暗示我必须这样做varmatchedApp=(fromappinProcess.GetProcesses()whereapp.ProcessName.Contains("MyAppName")&&app.Main

c# - 如何使用 Linq to ADO.NET Entity Framework 进行全文搜索 (FTS)?

现在SQLServer2008内置了全文搜索功能。我希望使用它来增强我网站的搜索功能。我也在考虑为我的ORM使用ADO.NETEntityFramework,但我想知道如何使用Linq到ADO.NETEntityFramework进行全文搜索(FTS)?ADO.NETEntityFramework是否有任何支持,或者我是否一直在使用methodofcreatingafunctionwhichusesthefulltextsearchpredicates? 最佳答案 EntityFramework仅支持可用的sql功能的一个子集(部分

c# - LINQ 中的动态 where 条件

我有一个场景,我必须在LINQ中使用动态where条件。我想要这样的东西:publicvoidtest(boolflag){fromeinemployeewheree.Field("EmployeeName")=="Jhom"If(flag==true){e.Field("EmployeeDepartment")=="IT"}selecte.Field("EmployeeID")}我知道我们不能在Linq查询中间使用“If”,但解决方案是什么?请帮忙... 最佳答案 请查看完整的博文:DynamicquerywithLinq您可以使

C# Linq 返回排序列表

如何让C#中的Linq返回SortedList给定一个IEnumerable?如果不能,是否可以将IEnumerable强制转换或转换为SortedList? 最佳答案 最简单的方法可能是使用ToDictionary创建字典,然后调用SortedList(dictionary)构造函数。或者,添加您自己的扩展方法:publicstaticSortedListToSortedList(thisIEnumerablesource,FunckeySelector,FuncvalueSelector){//Argumentcheckseli

c# - 如何使用 Linq 和 C# 在集合中添加项目

我有一个对象集合。例如Listsubscription=newList{newSubscription{Type="Trial",Type="Offline",Period=30},newSubscription{Type="Free",Type="Offline",Period=90},newSubscription{Type="Paid",Type="Online",Period=365}};现在我想使用LINQ在此列表中再添加一项。我该怎么做? 最佳答案 你不知道。LINQ用于查询,而不是添加。您通过编写来添加一个新项目:su

c# - 使用 linq-to-entities 将字符串转换为日期时间的大问题

如何使用linqtoentities将字符串转换为日期时间....我有下面的查询,其中visit_date列数据类型是字符串...varmemberl=fromvinabc.visitsjoinminabc.membersonv.member_Idequalsm.member_IdwhereConvert.ToDateTime(v.visit_Date)>=startdate&&Convert.ToDateTime(v.visit_Date)很遗憾,我无法更改架构...我遇到了错误:linqtoentitesdoesnotrecogniseConvert.ToDatetimemetho

c# - 如何使用 LINQ 按组合并/求和记录?

例如,我如何使用LINQ按GroupId对以下记录进行分组,并对每个组中的所有其他列求和?(从而将每组中的所有行合并为一个)varlist=newList(){newFoo(){GroupId=0,ValueA=10,ValueB=100},newFoo(){GroupId=1,ValueA=30,ValueB=700},newFoo(){GroupId=1,ValueA=40,ValueB=500},newFoo(){GroupId=2,ValueA=80,ValueB=300},newFoo(){GroupId=2,ValueA=20,ValueB=200},newFoo(){Gr

c# - LINQ to Entities 无法识别方法 'System.Object GetValue(...)'

我的问题是我需要查询泛型类中属性的值。该属性用属性标记。请看下面的代码:varrowKeyProperty=EFUtil.GetClassPropertyForRowKey();vartenantKeyProperty=EFUtil.GetClassPropertyForTenantKey();varqueryResult=objContext.CreateObjectSet().Single(l=>(((int)tenantKeyProperty.GetValue(l,null))==tenantKey)&&(((int)rowKeyProperty.GetValue(l,null)