Entity Framework 4 を使用して、メンバー名のコレクションに基づいて動的な並べ替えを実装しようとしています。基本的に、ユーザーは並べ替えるフィールドと並べ替えの順序を選択できます。式ツリーの例を見てきましたが、これをつなぎ合わせることができません。詳細は次のとおりです。
列名のコレクション:
public List<string> sortColumns;
sortColumns = new List<string>();
/// Example subset of video fields. The collection will vary.
sortColumns.Add("Width");
sortColumns.Add("Height");
sortColumns.Add("Duration");
sortColumns.Add("Title");
ビデオ クラスは次のように定義されます。
public class Video
{
public string Title { get; set; }
public int Width { get; set; }
public int Height { get; set; }
public float Duration { get; set; }
public string Filename { get; set; }
public DateTime DateCreated { get; set; }
.
.
.
}
public List<Video> Videos;
私がやりたいことは、実行時に式ツリーを構築するために sortColumns コレクションを列挙することです。また、ユーザーは昇順または降順の並べ替えを指定でき、式ツリーはいずれかを処理する必要があります。
VS 2008 用の Dynamic LINQ ライブラリを試しましたが、VS 2010 では動作しないようです (何か間違っている可能性があります)。
要するに、ユーザー入力に基づいて Videos コレクションを動的に並べ替える式ツリーが必要です。どんな助けでも大歓迎です。