0
select MessageText from Messages order by MessageTime

このSQLクエリからLINQ to SQLクエリを作成しようとしています。

私がしたくないことは、MessageTime(datetime) に注文されたデータベースの Messages テーブルにあるすべてのメッセージの LIST を返すことです。しかし、Linq クエリに対してこれを行うにはどうすればよいでしょうか。

テーブルは Messages Rows 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
 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 に答える
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 に答える
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 に答える