Я пытаюсь позвонить OrderBy()
, используя пользовательский IComparer
на SubSonic IQueryable
, например:
IQueryable<FooObject> sortedFoos =
FooObject.All()
.OrderBy(f => f, new FooObjectComparer());
Однако когда я пытаюсь перечислить более sortedFoos
или создать PagedList<FooObject>
, используя его, я получаю System.Exception: «Узел выражения LINQ типа MemberInit не поддерживается».
Вот реализация для FooObjectComparer
:
public class FooObjectComparer : IComparer<FooObject>
{
public FooObjectComparer() {}
public int Compare(FooObject x, FooObject y)
{
return x.MyProperty.CompareTo(y.MyProperty);
}
}
(Это простая реализация для целей отладки. Фактическая реализация будет более сложной).
Что мне здесь не хватает?