草庐IT

linq-query-syntax

全部标签

c# - 我正在尝试学习如何将 IEnumerable LINQ 集合绑定(bind)到转发器

我使用LINQ从字符串数组创建了一个IEnumerable赛车手列表,如下所示:string[]driverNames={"LewisHamilton","HeikkiKovalainen","FelipeMassa","KimiRaikkonen","RobertKubica","NickHeidfeld","FernandoAlonso","NelsonPiquetJr","JarnoTrulli","TimoGlock","SebastienBourdais","SebastienBuemi","MarkWebber","SebastianVettel","NicoRosberg

c# - 与 LINQ-to-XML 中的 InnerText 等效的是什么?

我的XML是:Berlin我想要字符串“Berlin”,如何从元素Location中获取内容,例如InnerText?XDocumentxdoc=XDocument.Parse(xml);stringlocation=xdoc.Descendants("Location").ToString();以上返回System.Xml.Linq.XContainer+d__a 最佳答案 对于您的特定样本:stringresult=xdoc.Descendants("Location").Single().Value;但是,请注意,如果您有更大

c# - 尝试使用 linq 在第一次匹配后获取所有元素

如何使用linq检索第一个不以"-"开头的元素之后的所有元素?vararr=new[]{"-s1","-s2","va","-s3","va2","va3"};varallElementsAfterVA=fromainarrwhere????selecta;我希望allElementsAfterVA为"-s3","va2","va3" 最佳答案 要查找第一个不以“-”开头的参数之后的所有参数,您可以这样做:varelementsAfterFirstNonDash=arr.SkipWhile(i=>i[0]!='-').Skip(1)

c# - Linq 在单次迭代中选择和聚合

有没有办法用linq做到这一点而不用枚举fooCollection两次?varfooCollection=//getfoovarselectedIds=newList();varaggregateContent=String.Empty;foreach(varfinfoo){selectedIds.Add(foo.Id);aggregateContent+=foo.Content}varresults=newFooResults{Content=aggregateContent,SelectedIds=selectedIds};returnresults;

c# - 如何使用 LINQ to XML 获取属性值?

1SamMale423-555-0124424-555-0545privatevoidWindow_Loaded(objectsender,RoutedEventArgse){emplyeeDetails=XDocument.Load(Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName+"\\LinqToXml\\Xmls\\"+"Employees.xml");varemplyees=fromempinemplyeeDetails.Descendants("Employee").Take(10)or

c# - LINQ to Entities 无法识别方法 'Int32 IndexOf(System.String, System.StringComparison)' 方法

我已经使用Entityframework执行了一个linq查询,如下所示GroupMastergetGroup=null;getGroup=DataContext.Groups.FirstOrDefault(item=>keyword.IndexOf(item.Keywords,StringComparison.OrdinalIgnoreCase)>=0&&item.IsEnabled)执行此方法时出现如下异常LINQtoEntitiesdoesnotrecognizethemethod'Int32IndexOf(System.String,System.StringCompariso

c# - 在 LINQ to SQL 中返回结果集之前检查记录是否存在

我正在寻找一种简单的解决方案来取代我在尝试检索数据之前验证记录是否存在的标准化垃圾方式。目前,每当调用我的方法之一时,我都会做一些事情...privateRecordDoSomething(intid){if(data.Records.Count(q=>q.Id==id)>0){returndata.Records.First(q=>q.Id==id);}returnnull;}...我总是检查记录数以确定记录是否存在。必须有一种更“优雅”的方式来做到这一点,而无需两次调用数据库。有办法吗? 最佳答案 有很多干净的方法可以处理这个问

c# - LINQ 相交,多个列表,一些为空

我正在尝试寻找与LINQ的交叉点。示例:Listint1=newList(){1,2};Listint2=newList();Listint3=newList(){1};Listint4=newList(){1,2};Listint5=newList(){1};想要返回:1,因为它存在于所有列表中。如果我运行:varintResult=int1.Intersect(int2).Intersect(int3).Intersect(int4).Intersect(int5).ToList();它什么都不返回,因为1显然不在int2列表中。无论一个列表是否为空,我如何让它工作?使用上面的例子

c# - 使用 Linq 选择类的属性以返回 IEnumerable<T>

如果我有一个SortedList我想退回一个新的IEnumerable该类的属性我该怎么做?我试过了SortedList.Select(x=>x.MyProperty,x.AnotherProperty)但它不起作用。谢谢。 最佳答案 你可以返回一个匿名对象:varresult=SortedList.Select(x=>new{x.Value.MyProperty,x.Value.AnotherProperty});或者如果你想在当前方法的范围之外使用结果,你可以定义一个自定义类型:IEnumerableresult=SortedL

c# - LINQ to XML - 使用前缀访问后代

我有一个这样的示例xml文件NameaddressZip所有节点的前缀值都为vs,谁能告诉我如何解析此文件以读取名称和地址信息?我对LINQ很陌生。对此的任何帮助将不胜感激。谢谢! 最佳答案 您需要知道命名空间是什么。这将在早些时候声明,类似于:xmlns:vs="http://some_url_here"可以使用XNamespace查询:XNamespacevs="http://some_url_here";varnames=doc.Descendants(vs+"Name").Select(x=>(string)x).ToLis