Я использую архитектуру s # arp и NHibernate 3.1.
Я бы хотел случайным образом выбрать 10 строк в таблице, и я следую совету, данному на этой странице Linq Orderby randomThreadSafe для использования в ASP.NET
Решение включает в себя выполнение XOR в базе данных, и мой запрос выглядит следующим образом
repo.FindAll()
.OrderBy(q => ((~(q.QuestionId & seed)) & (q.QuestionId | seed)))
.Take(10);
И я получаю следующую ошибку: Unableдля приведения объекта типа 'NHibernate.Hql.Ast.HqlBitwiseAnd' к типу 'NHibernate.Hql.Ast.HqlBooleanExpression'
Когда я удаляю '~' из запроса, я не получаю ошибку,Это ошибка в NHQueryProvider, которая не может понять '~' как побитовую операцию?