FNHを使用して、次を使用してカテゴリを取得しようとしています:
_session.QueryOver<Data.Model.Category>()
.Where(c => tourCreateRequest.Categories.Contains(c.CategoryId))
.List()
.Select(_categoryMapper.CreateCategory)
.ToList();
しかし、.Contains()メソッドでエラーが発生します。
認識されないメソッド呼び出し: System.Collections.Generic.ICollection`1[[System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]:Boolean Contains(Int64)
なぜそのエラーが発生するのですか?何が問題なのですか?
いくつかの投稿を行った後、クエリを (以下) に変更しました。これは Query<> で機能します。
_session.Query<Data.Model.Category>()
.Where(c => tourCreateRequest.Categories.Contains(c.CategoryId))
.ToList()
.Select(_categoryMapper.CreateCategory)
.ToList();
QueryOver<> は最新かつ最高であり、Query<> の代わりに使用する必要があると思いました。
上記のように QueryOver<> を使用する方法の問題は何ですか?