1
我有一个消息列表具有成员:LinqToEntities分组
文本= m.Text,用户= m.User,日期= m.Date
此列表包括所有像
消息Text = "How Are You"
User = "Michael"
Date = "1/1/12"
Text = "Well Done"
User = "Michael"
Date = "2/1/12"
Text = "Who?"
User = "John"
Date = "1/1/12"
我好心需要从中将不会从同一人显示多个消息,并只给出了最后一个喜欢的人获得最新消息:
Text = "Well Done"
User = "Michael"
Date = "2/1/12"
Text = "Who?"
User = "John"
Date = "1/1/12"
正如你所见;我想消除来自同一个人的以前的消息。
我目前正在使用:
var messages = (from m in mList select new
{
Text = m.Text,
User = m.User,
Date = m.Date
}).ToList();
我要补充什么这个查询实现我的目标是什么?
谢谢!
感谢大卫!这很容易:) – MrGorki
@MrGorki:正如TheHe指出的那样,这里的OrderBy将假定一个实际的日期而不是日期字符串。我会建议你解析它到一个日期。如果你不喜欢解析的想法,但知道你可以依赖列表按时间顺序排列,那么你可以使用'.Last()'来代替列表中的最后一个条目,为每个人选择用户。 –
唯一的失真是.First(),但它与.FirstOrDefault()一起工作没有任何问题..太棒了!再次感谢。 – MrGorki