並べ替えようとしているViewModelオブジェクトのコレクションがあります。
これは私のViewModelクラスの省略形です。
public class BookIndexFormViewModel
{
//Properties
public Book Book { get; set; }
//Constructor
public BookIndexFormViewModel(Book book)
{
Book = book;
}
これは、コレクションをインスタンス化するリポジトリ内のメソッドです。
public IQueryable<BookIndexFormViewModel> GetAllBooks()
{
return db.Books.Select(b => new BookIndexFormViewModel(b));
}
これは、コレクションを注文しようとしている私の省略形であり、例外が発生します。
var books = _bookRepository.GetAllBooks();
books.OrderBy(x => x.Book.Name);
これはスローされる例外です:
The member 'TheBibliophile.Controllers.BookIndexFormViewModel.Book' has no supported translation to SQL.
私はこれに困惑しています。ネット上で見られるほとんどの場合のように、この例外を受け取ったときにメソッドを呼び出そうとはしていません。ViewModelのプロパティのプロパティで並べ替えようとしています。任意のヒント?