LINQ groupby和json输出

拉斯

我的任务是对具有以下结构的Subscription对象列表中的数据进行分组:

public class Subscription
{
    public string ApplicationId { get; private set; }
    public string UserCode { get; private set; }
    public string SubscriptionId { get; private set; }
    public string SubscriptionCode { get; private set; }
    public DateTime? StartDate { get; private set; }
    public DateTime? EndDate { get; private set; }
}

该代码返回订阅列表,因此返回列表。就我而言,我有几个项目具有相同的ApplicationId,但StartDate和EndDate不同。基本上,我必须对这些项目进行分组,以创建一个像这样的json结构:

"applicationId" : {
    "subscriptions" : [
        {
            "startdate"  : ...,
            "enddate"  : ...,
        },
        {
            "startdate"  : ...,
            "enddate"  : ...,
        },      
    ]
}

我可以使用LINQ来实现吗?

三角洲

试试这个:

subscriptions.GroupBy(item => item.SubscriptionCode)
.Select(group => new { Subscription = group.Key, Items = group.Select(item => new { StartDate = item.StartDate, EndDate = item.EndDate}) })

不知道它是否会工作,但它看起来像它会。

订阅只是对象的列表。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章