非常に難しい並べ替えの問題に遭遇しました。誰かがこれを理解するのを手伝ってくれるかどうか疑問に思っています。基本的に、次の情報でいっぱいの SQL テーブルがあります。
ID (The comment's Unique Identifier)
Previous ID (The ID of the comment that is being replied to with this comment)
Position (The position of how "deep" the comment is, a post directly on a
page would be "1" a reply to that "2", etc.
この情報を使用して、呼び出されたときに適切な順序で返されるように C#/LINQ を使用して並べ替えることができますか?
例は次のとおりです。
ID | Position | PreviousID | Message|
1 | 1 | 0 | Hello
2 | 1 | 0 | How
3 | 2 | 1 | There!
4 | 2 | 2 | Are
5 | 3 | 4 | You?
次の順序でソートされます。
1. Hello
2. There!
3. How
4. Are
5. You?
これがどのように行われるか、またはそれが可能であるかどうかについて頭を悩ますのに苦労しているので、正しい方向への微調整だけでも大歓迎です、ありがとう!
さらに詳しい情報として、これは消去できないコンテンツがたくさんある既存のテーブルです。この方法で並べ替える方法を見つける必要があります。