Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 按条件分组对象_C# - Fatal编程技术网

C# 按条件分组对象

C# 按条件分组对象,c#,C#,我有一组对象,每个对象包含两个日期。我想根据这两个日期的独特组合对它们进行排序。然后我想在每个对象中设置一个变量来表示它所属的组 就像一组日期是A组,另一组是B组等等 我想知道是否有一种简单的方法可以做到这一点。以下是如何按两个字段进行分组: var groups = collection.GroupBy(i => new { i.DateTime1, i.DateTime2 }, i => i); 将元素分组后,可以设置“组变量”: 以下是如何按两个字段分组: var group

我有一组对象,每个对象包含两个日期。我想根据这两个日期的独特组合对它们进行排序。然后我想在每个对象中设置一个变量来表示它所属的组

就像一组日期是A组,另一组是B组等等


我想知道是否有一种简单的方法可以做到这一点。

以下是如何按两个字段进行分组:

var groups = collection.GroupBy(i => new { i.DateTime1, i.DateTime2 }, i => i);
将元素分组后,可以设置“组变量”:


以下是如何按两个字段分组:

var groups = collection.GroupBy(i => new { i.DateTime1, i.DateTime2 }, i => i);
将元素分组后,可以设置“组变量”:


这个问题很模糊。但您始终可以创建一个具有两个日期成员和一个表示组类型的枚举的类

public class DateHolder
{
    public enum DHGroups { A, B }

    public DHGroups Group { get; set; }
    public DateTime Date1 { get; set; }
    public DateTime Date2 { get; set; }

    public void SetGroup()
    {
        // Work with Date1 and Date2 to determine the Group
    }
}

这个问题很模糊。但您始终可以创建一个具有两个日期成员和一个表示组类型的枚举的类

public class DateHolder
{
    public enum DHGroups { A, B }

    public DHGroups Group { get; set; }
    public DateTime Date1 { get; set; }
    public DateTime Date2 { get; set; }

    public void SetGroup()
    {
        // Work with Date1 and Date2 to determine the Group
    }
}

“这两个日期的唯一组合。”
这是什么意思?假设A组可能是包含1月1日和1月3日的对象。那么B组可能是包含1月1日和1月5日的对象。如果您尝试了任何方法,请发布一些示例数据和代码。这并不能解释太多。你真的需要更清楚你想做什么,你还需要展示你已经尝试过的东西。因此,我们的期望是,您已经做了一些尝试,并通过告诉我们您尝试的代码不起作用来展示。应该如何构造组名?
“这两个日期的唯一组合。”
这是什么意思?假设组A可能是包含1月1日和1月3日的对象。那么B组可能是包含1月1日和1月5日的对象。如果您尝试了任何方法,请发布一些示例数据和代码。这并不能解释太多。你真的需要更清楚你想做什么,你还需要展示你已经尝试过的东西。所以,我们的期望是,您已经做了一些尝试,并通过告诉我们您尝试的哪些代码不起作用来说明这一点。应该如何构造组名?