0
select MessageText from Messages order by MessageTime

我正在尝试从此 SQL 查询中进行 LINQ to SQL 查询。

我不想做的是返回我的数据库中我的消息表中所有消息的列表,这些消息在消息时间(日期时间)上排序。但是如何对 Linq 查询执行此操作?

表称为消息行 MessageText(string) 和 MessageTime(datetime)。

public IList<MessageByUser> GetAllMessages()
{
    var messlist = (m => m.MessageTime)
        .Select(m => OrderByDescending(y => y.MessageTime)
        .FirstOrDefault())
        .OrderByDescending(m => m.MessageTime);
}

我迷路了....有什么建议吗?

4

5 回答 5

1
return Messages.OrderByDescending(m => m.MessageTime).ToList();
于 2013-09-16T09:08:27.017 回答
1

使用以下 linq 表达式:

var q = from message in messages orderby message.MessageTime descending select message.MessageText;
于 2013-09-16T09:10:38.853 回答
1
 var me = (from m in chat.Messages
                  orderby m.MessageTime descending
                  select new MessageByUser() { MessageText = m.MessageText }).ToList();
        return me;

这个终于为我工作了。

谢谢大家的例子!我让我思考并尝试不同的方法。:)

于 2013-09-16T09:58:12.777 回答
0

我确定 .FirstOrDefault() 应该被删除,因为这仅返回最大 1 个元素并且订购单个元素列表没有用。

于 2013-09-16T09:07:36.053 回答
0
Messages.OrderByDescending(m => m.MessageTime).Select(x => x.MessageText).ToList();
于 2013-09-16T09:14:23.263 回答