草庐IT

c# - 如何使用 linq 或 lambda 表达式连接两个列表

我有两个列表List和List我想加入工单编号上的两个列表,详情如下。换句话说,我有一个计划工作列表,但我需要知道workOrderNumber的工作描述。我对linq和lambda表达式都是新手,我还没有完全理解它们。classWorkOrder{publicintWorkOrderNumber{get;set;}publicstringWorkDescription{get;set;}}classPlannedWork{publicintWorkOrderNumber{get;set;}publicDateTimeScheduledDate{get;set;}}

c# - 使用 LINQ 更新记录

我需要在表格中为部分行设置一个值。在SQL中,我会这样做:UPDATEdbo.PersonSETis_default=0WHEREperson_id=5有没有办法在LINQ中执行此操作?我目前使用:varresult=(frompinContext.People....)符号。有没有我可以使用的更新方法?或者我是否必须获取所有记录,然后在Foreach中逐一更新它们?如果可能的话,这是最有效的方法吗?(frompinContext.person_account_portfoliowherep.person_id==personIdselectp).ToList().ForEach(x=

c# - Linq查询列表包含一个列表

我有2个类(class)的:publicclassObjectA{publicintId;publicstringName;}publicclassObjectB{publicintId;publicstringName;publicListListOfObjectA;}所以我有两个列表:一个ObjectB(ListObjectB),另一个包含ObjectA的ID列表(称为ListOfIdsA)。如果我想获取ObjectB的列表,其中ObjectB.ListOfObjectA在ListOfIdsA中。我的第一个(也是错误的)方法是ListObjectB.Where(p=>ListOfI

c# - 如何使用 LINQ 选择 WHERE NOT EXIST?

我必须列出要分配给“员工”的所有“shift”数据,但如果员工数据中已存在轮类数据,则不得包含该数据。让我们看看图像样本。这个查询解决了这个问题。我在这里找到了这个:Scott'sBlogselect*fromshiftwherenotexists(select1fromemployeeshiftwhereshift.shiftid=employeeshift.shiftidandemployeeshift.empid=57);让我们看看结果:现在我的问题是,我怎样才能在linQ中做到这一点?我正在使用EntityFramework。希望有人能帮忙。非常感谢!!!

c# - LINQ to Entities 不支持“日期”。仅支持初始化器、实体成员和实体导航属性

我正在尝试执行以下代码并收到错误publicListGetLoggingData(DateTimeLogDate,stringtitle){varcontext=newLoggingEntities();varquery=fromtincontext.Logswheret.Title==title&&t.Timestamp==LogDateselectt;returnquery.ToList();}我收到的错误是“LINQtoEntities不支持指定的类型成员‘Date’。仅支持初始值设定项、实体成员和实体导航属性。”我尝试过各种尝试将所有内容转换为字符串,只比较日期部分,但似乎无法

c# - LINQ 查找值的数组索引

假设我有以下字符串数组:string[]str=newstring[]{"max","min","avg","max","avg","min"}是否可以使用LINQ获取与一个字符串匹配的索引列表?例如,我想搜索字符串“avg”并得到一个包含的列表2,4意味着可以在str[2]和str[4]找到“avg”。 最佳答案 .Select有一个很少使用的生成索引的重载。你可以像这样使用它:str.Select((s,i)=>new{i,s}).Where(t=>t.s=="avg").Select(t=>t.i).ToList()结果将是一

c# - foreach + break vs linq FirstOrDefault 性能差异

我有两个类可以执行特定日期的日期范围数据获取。publicclassIterationLookup{privateIListitems=null;publicIterationLookup(IEnumerableitems,FunckeySelector){this.items=items.OrderByDescending(keySelector).ToList();}publicTItemGetItem(DateTimeday){foreach(TItemiinthis.items){if(i.IsWithinRange(day)){returni;}}returnnull;}}p

c# - 如何使用 LINQ-to-XML 选择特定节点

我可以选择第一个客户节点并使用下面的代码更改其公司名称。但是如何选择ID=2的客户节点呢?XDocumentxmldoc=newXDocument(newXDeclaration("1.0","utf-8","yes"),newXComment("Theseareallthecustomerstransferedfromthedatabase."),newXElement("Customers",newXElement("Customer",newXAttribute("ID",1),newXElement("FullName","JimTester"),newXElement("Ti

c# - LINQ 查询以查找列表中的项目是否包含在另一个列表中

我有以下代码:Listtest1=newList{"@bob.com","@tom.com"};Listtest2=newList{"joe@bob.com","test@sam.com"};我需要删除test2中具有@bob.com或@tom.com的任何人。我试过的是这样的:boolbContained1=test1.Contains(test2);boolbContained2=test2.Contains(test1);bContained1=false但bContained2=true。我不想遍历每个列表,而是使用Linq查询来检索数据。bContained1与我在下面创建的

c# - Linq where 子句只比较没有时间值的日期值

var_My_ResetSet_Array=_DB.tbl_MyTable.Where(x=>x.Active==true&&x.DateTimeValueColumnx);上层查询工作正常。但我只想检查日期值。但上层查询检查日期+时间值。在传统的mssql中,我可以编写如下查询。SELECT*FROMdbo.tbl_MyTableWHERECAST(CONVERT(CHAR(10),DateTimeValueColumn,102)ASDATE)所以谁能给我建议我如何在Linq中只检查日期值。 最佳答案 EF6.0中还有Entity