gpt4 book ai didi

c# - Linq 查询返回保存每个传递对象的最大 DateTime 属性的数据结构

转载 作者:行者123 更新时间:2023-11-30 21:41:56 26 4
gpt4 key购买 nike

函数获取 Person 对象的列表。每个人都有一个 Guid 属性和多个 DateTime? 属性。

我需要一个 LINQ 查询来返回任何类型的数据结构(我考虑过一个字典,但它不是强制性的)保存每个 Person 对象及其各自的最大 DateTime? 属性。

所以我有:

public class Person
{
public Guid id {get; set;}
public DateTime? Activity1 {get; set;}
public DateTime? Activity2 {get; set;}
public DateTime? Activity3 {get; set;}
}

我需要:

//{{ 1st Person's Guid, 1st Person's max DateTime}, { 2nd Person's Guid, 2nd Person's max DateTime}, ...}

最佳答案

如果每个人的 ID 都是唯一的,我想这就是您要查找的内容:

var result=persons.ToDictionary(p=>p.id,
p=>new{
Person=p,
MaxDate=new[]{p.Activity1,
p.Activity2,
p.Activity3}.Max()});

您可以将这三个属性转换为数组并使用 Linq 获取最大值。

关于c# - Linq 查询返回保存每个传递对象的最大 DateTime 属性的数据结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42905380/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com