(2)これらはいずれも以下のSQLの結果と同じになることを期待して書いたものです。1しかし、両者の返すレコードは異なります。OrderByDescendingで並べ替えた先頭から一件とりたいのですが、(1)の方はまれに意図したレコードと違うものが返って来ることがあります。例外がこんなに少ないのか分かりませんが、とにかく保証はできないようです。以下の(3)は(2)と同じ結果になります。(3)こういう場合、最終的にどんなSQLが実行されているのか知りたくなるわけですが、その方法がありません。ToTraceString()で見られる未完成のSQLでは、最終的なクエリは見えません。Frameworkが駄目なところです。いや、System.Data.SQLiteの問題か?今回は関係ないですが、ObjectQueryを使い回しする場合には、FirstやToArrayの直前までを変数に格納して、Firstの条件部分だけを変えるという使い方をしていることがあったんですが、これではまずいですね。コメントデータの処理方法の詳細はこちらをご覧ください。