【c# – 如何制作流式LINQ表达式,以提供已过滤的项目以及过滤的项目?】教程文章相关的互联网学习教程文章

c#-Linq-然后比较每个组中的元素【代码】

例如,假设在我的C#代码中,我的MyClass定义为:public class MyClass {public string GroupName;public DateTime Dt;public int Id;public string Val;.... other properties .... }并假设我有以下List< MyClass> (将其显示为表格,因为它似乎是描述内容的最简单方法):GroupName: Dt: Id: Val: Group1 2016/01/01 1 Val1 Group1 2016/01/02 1 Val1 Group...

c#-Linq-项目列表将列表与列表中的C对象分组在一起【代码】

我有类似的课程:public class A {public DateTime Date { get; set; }public int Hour { get; set; }public decimal Value { get; set; } }public class B {public DateTime Date { get; set; }public C C { get; set; } }public class C {public int Hour { get; set; }public decimal Value { get; set; } }我有一个List< A>其中包含一系列日期,每个日期都有小时值.我正在尝试将其从该格式转换为B型,因此使用List< B>. 例如,如果...

如何将C#linq中的groupby视为二维列表?【代码】

List<History> data = new List<History>(){ new History() {Symbol="a", Close = 1.0m, Date = new DateTime(2016, 2, 1) },new History() {Symbol="a", Close = 1.2m, Date = new DateTime(2016, 2, 2) },new History() {Symbol="a", Close = 1.3m, Date = new DateTime(2016, 2, 3) },new History() {Symbol="b", Close = 1.2m, Date = new DateTime(2016, 2, 1) },new History() {Symbol="b", Close = 1.2m, Date = new Date...

C#-动态Linq Multiple vs Single .where查询【代码】

为什么单个where查询给出的结果与多个where查询给出的结果不同?query.Where("666 = ID"); query.Where("ActiveFrom < @0 && ActiveTo > @1 && ValidFrom < DateTime.Now && ValidTo > DateTime.Now", toDate, fromDate);query.ToString();结果是 :SELECT *FROM [Country] AS [Extent1]WHERE 666 = [Extent1].[ID]和具有多个where调用的相同查询query = query.Where("ActiveFrom < @0", toDate); query = query.Where("ActiveTo ...

c#-在LINQ JOIN中添加第二个条件【代码】

我环顾四周,发现了一些向JOIN子句添加第二个条件的文章,但是它们始终是一个列链接到另一个列的实例,但是在我的实例中,我只需要使列等于某个值即可.我试图模仿的RAW SQL是:LEFT OUTER JOIN dbo.TimeCardHeader AS tch2 on tch1.EmployeeID = tch2.EmployeeID && tch2.WeekEndingDate = @PayPeriod如您所见,我的第二个连接条件是将表中的列值与变量匹配.我已经尝试了以下LINQ查询器,但是它们都失败了.join leftth2 in db.TimeCardHe...

首页> C#>动态Linq的where子句抛出OutOfMemoryException【代码】

我是Linq的新手,并且是使用表达式树的真正初学者. 我有一个通用的表达式例程,可构建一个简单的Linq where子句,该子句在以下位置找到:https://www.simple-talk.com/dotnet/net-framework/dynamic-linq-queries-with-expression-trees/public Func<TSource,bool> SimpleFilter<TSource> (string property, object value) {var type = typeof(TSource);var pe = Expression.Parameter(type, "p");var propertyReference = Expression...

c#-Linq,基于两个不同的ID从一个表中选择两个记录【代码】

我正在尝试创建一条语句,其中我从一个ID开始在table1中选择一个对象,然后从该对象中获取2个新ID,然后使用它们在table2中查找2个不同的对象.我的目标是最终得到一个匿名对象,该对象具有来自table1的对象和来自table2的2个对象,即(table1.object,table2.object1,table2.object2). 我不知道这是否可以在单个语句中完成. 到目前为止,我已经明白了,但它只给了我table1.object和table2.object1,而不是table2.object2:db.Person.Where(x ...

c#-将LINQ Select中的递归方法组转换为迭代方法【代码】

我有一堂课,看起来像这样:public class SourceObject {public string Id { get; set; }public List<SourceObject> Children { get; set; }public SourceObject(){Children = new List<SourceObject>();} }如您所见,它具有一个属性,其中包含该类的其他实例的列表.我正在为此类处理的数据意味着直到运行时为止,子级的数目都是未知的,并且所得对象图的总体“深度”也是未知的. 我需要从SourceObject的对象图创建一个“映射”到Destin...

使用Linq C#获取循环中的分组属性【代码】

我有一些按属性FleetID分组的CartItems.var groupedCartItems = cart.CartItems.OrderBy(x => x.FleetID).GroupBy(x => x.FleetID);foreach (var fleetItem in groupedCartItems) {/////// var currentFleetID = fleetItem.GroupedFleetID; ////////foreach(var itm in fleetItem){} }在每个组的循环中,如何访问按其分组的FleetID属性?解决方法:在这种情况下,您要基于单个列进行分组,因此可以通过组键进行访问.这意味着FleetIte...

c#-与Linq相交和求和【代码】

这个问题已经在这里有了答案: > C# List of objects, how do I get the sum of a property 4个我有以下ID列表:string[] ids = { "AF1", "AF2", "AF3" };我的目标是将此列表的ID与下表相交,并在不进行foreach的情况下通过单个linq查询求和年龄:PersonId |Name |AgeAF1 |John |20AF2 |Oscar |50 AF3 |Peter |30 ...

C#LINQ,如果找不到(时间),请选择上一个/复制上一个结果【代码】

假设我有一个List< Type>以及具有以下属性的Type:public DateTime OriginalDateTime { get; set; } public double RoundedTime { get; } public int MyValue { get; set; }该类包含一个构造函数:public Match(DateTimeOffset dateTime, int bid, int ask, int volume) {DateTime = dateTime;RoundedTime = Math.Round(Math.Ceiling(dateTime.ToTimeStamp() / 60) * 60); // Round to nearest minuteBid = bid;Ask = ask;Volume =...

c#-当每种房间类型中有多个房间时,如何使用LINQ查找可用房间?【代码】

我有能力让客户在输入他们选择的日期并指定他们的房间选择后进行预订.在这一点上-检查可用性-我使用以下LINQ表达式:var availRooms = db.Rooms.Where(room => room.RoomTypeID == roomChoiceID).Where(m => m.Bookings.All(r => r.Departure <= model.Arrival || r.Arrival >= model.Departure));(通过使用用户输入的房间选择查询数据库来获得roomChoiceID) 直到我决定在相同的日期预订两个相同类型的房间,此方法才能正常工作. (例...

C#-LINQ分组结果需要很长时间【代码】

我有以下方法进行一些分组private List<CatalogVehicle> GroupResult(IEnumerable<VehicleAndQuote> vehiclesAndQuotes){var vehicles = vehiclesAndQuotes.GroupBy(vehicleAndQuote =>new{vehicleAndQuote.Vehicle.VehicleMakeName,vehicleAndQuote.Vehicle.VehicleModelTypeName,vehicleAndQuote.Vehicle.VehicleEdition}).Select(a => new{vehicle = _mapper.Map<VehicleAndQuote, CatalogVehicle>(a.First()),plans = GetLeasi...

c#-Linq OrderBy()与List.Sort()的速度【代码】

这是随机整数的枚举:var r = new Random(); var e = Enumerable.Repeat(1, 10_000_000).Select( _ => r.Next());您认为哪个版本更快:var result = e.OrderBy(x => x).Last(); //materialize the IEnumerable要么var l = e.ToList(); l.Sort(); var result = l.Last();我希望第一个示例中的.OrderBy(x => x).Last()是优化后仅对列表的一小部分进行排序或仅对列表进行O(n)遍历. 扰流板:不是. 但是,这两个版本的性能至少应该差不多...

首页> C#>如何应用包含在最后的记录和删除如果在LINQ找到?【代码】

我有一个类似的字符串列表AAPL,28/03/2012,88.34,88.778,87.187,88.231,163682382 AAPL,29/03/2012,87.54,88.08,86.747,87.123,151551216 FB,30/03/2012,86.967,87.223,85.42,85.65,182255227现在,我只想使用LINQ删除最后一条记录(如果它不包含AAPL(符号名)). 在下面,我编写了包含多行代码的代码,但我想将其设置为单行代码,fileLines = System.IO.File.ReadAllLines(fileName).AsParallel().Skip(1).ToList(); var lastLine = file...