草庐IT

Linq2XSD

全部标签

c# - 如何使用 LINQ 在 XML 中按名称获取元素

我选择这里的标题是因为我的问题是我需要获取示例中提到的Item节点。我有以下XML并且在使用LINQ查询它时遇到问题,我之前已经能够解析XML-但是我已经坚持了几个小时,希望有人能提供帮助。下面是我的XML数据(示例数据):98765DataCatalogue123456ItemOne654321ItemTwo123456ItemOne654321ItemTwoCatalogue我希望能够从Items下的ItemXML标签中提取ID,但是在数据下有一个带有Item条目的Items标签我根本不想要这些节点-我想要root/items/id/id如果这被表示为路径。我已经用LINQ尝试了我

c# - LINQ 的 All 方法有相反的方法吗?

我正在使用a_list.All(item=>!(item.field_is_true==true))效果很好,但我想知道是否有适当的LINQ方法来执行相反的操作。 最佳答案 All()检查给定的Predicate是否对所有项都返回true。在框架开发方面,编写一个单独的方法来检查给定的Predicate是否为所有项目返回false没有任何意义,因为“不”谓词很容易。但是,您可以编写自己的扩展方法:publicstaticboolNone(thisIEnumerablesource,Funcpredicate){return!sour

c# - Linq 查询按组求和

我有一个这样的数据表:CategoryDescriptionCurrentHoursCTDHoursLC1CatOne50LC2CatTwo60LC3CatThree180LC1CatOne09LC2CatTwo015LC4CatFour021我需要对此进行分组和求和:CategoryDescriptionCurrentHoursCTDHoursLC1CatOne514LC2CatTwo621LC3CatThree180LC4CatFour021换句话说,我需要对按类别和描述列分组的两个小时列求和。我知道我可以构建一个新表并循环遍历现有数据并将数据求和到新表中,但我认为使用Linq会有

c# - LINQ 查询中的 "=>"标志是什么?

令人吃惊的是,这方面的信息如此之少。我找到了大量解释LINQ的教程,但它们没有解释这个特定的运算符:varResults=UserFavoritesContext.UserFavorites.Select(color=>color.FavoriteColor);“x=>x.y”有人可以解释一下这是如何工作的吗?我掌握了一般语法并能够使用它进行查询,但这就像在不知道自己在做什么的情况下做某事。 最佳答案 假设您有一个people列表,并且您想要遍历他们。你会写这样的东西:foreach(varpersoninpeople){//dos

c# - 为什么我可以在迭代 LINQ 列表时对其进行编辑?

我最近遇到一个问题,我可以更改在foreach循环中迭代的IEnumerable对象。据我了解,在C#中,您不应该能够编辑正在迭代的列表,但经过一番挫折后,我发现这正是正在发生的事情。我基本上循环了一个LINQ查询并使用对象ID在数据库中对这些对象进行了更改,这些更改影响了.Where()语句中的值。有人对此有解释吗?似乎每次迭代时LINQ查询都会重新运行注意:解决此问题的方法是在.Where()之后添加.ToList(),但我的问题是为什么会发生此问题,即如果它是错误或我不知道的事情usingSystem;usingSystem.Linq;namespaceMyTest{classP

c# - Linq 到实体 : using ToLower() on NText fields

我正在使用SQLServer2005,带有区分大小写的数据库..在搜索功能中,我需要创建一个带有“where”子句的LinqToEntities(L2E)查询,该子句使用这些规则将多个字符串与数据库中的数据进行比较:比较是一种“包含”模式,不是严格比较:因为在L2E中允许使用字符串的Contains()方法,所以很容易比较必须不区分大小写:我对两个元素都使用ToLower()来执行不区分大小写的比较。所有这一切都表现得非常好,但我遇到了以下异常:我的字段之一出现“参数数据类型ntext对于下层函数的参数1无效”。该字段似乎是一个NText字段,我无法对其执行ToLower()。我该怎么

c# - Linq 选择子对象具有匹配子对象的父对象

这个问题在这里已经有了答案:linqstring.containsonfieldofchildobjectlist(1个回答)关闭7年前。我将如何编写一个LINQ语句来选择在其集合中具有匹配子对象的父对象?这是示例类。classParent{intID{get;set;}stringName{get;set;}ListChildren{get;set;}}classChild{intID{get;set;}stringName{get;set;}stringNickname{get;set;}}在上面的示例中,我想返回包含具有特定昵称的child的所有parent。

c# - 如何使用 LINQ 和 C# 更新带有列表的元素

我有一个对象列表,我想更新其中一个对象中的特定成员变量。我知道LINQ是为查询而设计的,并不意味着更新不可变数据列表。实现这一目标的最佳方法是什么?如果它不是最有效的,我不需要使用LINQ作为解决方案。创建更新扩展方法是否可行?如果是这样,我该怎么做?EXAMPLE:(fromtradeinCrudeBalancedListwheretrade.Date.Month==monthIndexselecttrade).Update(trade=>trade.Buy+=optionQty); 最佳答案 虽然linq并不意味着更新不可变数据

c# - Linq 查询返回 true 或 false

我有一个查询,它应该返回TRUE或FALSE。varquery=fromcindb.Empfromdindb.EmpDetailswherec.ID==d.ID&&c.FirstName=="A"&&c.LastName=="D"//ItshouldreturnTRUEwhenthisabovestatementmatchesalltheseconditions我想将这个查询结果附加到一个属性(字符串数据类型)this.result=Conert.ToBoolean(query);如何在LINQ中实现这一点?编辑:EmpMapper类publicclassEmpMapper{EmpEn

c# - LINQ 查询中的 InvalidCastException

对于此LINQ查询,我得到以下异常:(fromrowinds.Tables[0].AsEnumerable()whererow.Field("Dept_line_code")==DeptCode&&row.Field("Skill_Name")==skill&&row.Field("Acct_Code")==account&&row.Field("Location")==dtNewTable.Rows[intRow]["Location"].ToString()selectrow.Field("Presently_Available")==null?0:row.Field("Prese