请教一个linq的问题....................

火拼阿三 2014-11-18 02:51:02

M_ImgData model = new M_ImgData();
for (int i = 1; i <= 50; i++)
{
if (i == 0 || i == 1 || i == 2)
{
model._id = "1";
}
else
{
model._id = i.ToString();
}
model.CreateDate = DateTime.Now.AddSeconds(i);
model.Key = "123";
list.Add(model);
}

怎么得到重复中时间最大的一个,每个ID只能有一个。。。。。。
...全文
95 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
q107770540 2014-11-18
  • 打赏
  • 举报
回复
list.GroupBy(x=>x.id).Select(g=>g.OrderByDescending(x=>x.CreateDate).First());
火拼阿三 2014-11-18
  • 打赏
  • 举报
回复
引用 4 楼 q107770540 的回复:
list.GroupBy(x=>x.Key).OrderByDescending(x=>x.CreateDate).First().CreateDate
比如 id=1可能有2,3个,但是时间不同,取时间大的那个只取一个,多余都不要。。。 取id相同的,时间最大的一个。 结果就是48个,ID1取最大时间的的。。。
火拼阿三 2014-11-18
  • 打赏
  • 举报
回复
引用 3 楼 xyl2902 的回复:
没看懂要求什么意思
比如 id=1可能有2,3个,但是时间不同,取时间大的那个只取一个,多余都不要。。。 去id相同的,时间最大的一个。。。
q107770540 2014-11-18
  • 打赏
  • 举报
回复
list.GroupBy(x=>x.Key).OrderByDescending(x=>x.CreateDate).First().CreateDate
Satroki 2014-11-18
  • 打赏
  • 举报
回复
没看懂要求什么意思
火拼阿三 2014-11-18
  • 打赏
  • 举报
回复

    for (int i = 1; i <= 50; i++)
            {
                M_ImgData model = new M_ImgData();
                if (i == 0 || i == 1 || i == 2)
                {
                    model._id = "1";
                }
                else
                {
                    model._id = i.ToString();
                }
                model.CreateDate = DateTime.Now.AddSeconds(i);
                model.Key = "123";
                list.Add(model);
            }

    public class M_ImgData
    {
        public string _id;

        public DateTime CreateDate { get; set; }

        public string Key { get; set; }
    }
火拼阿三 2014-11-18
  • 打赏
  • 举报
回复
秒结贴。。。。。。。。。。。。。。速速来。、

111,093

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧