я следующие таблицы:NHibernate - Присоединение по ID собственности, не возражают
Customer(ID, Name)
Transaction(ID, CustomerID, Date)
Объекты отображения для таблиц определяются без объектов, только примитивные типы:
Customer(int ID, string Name)
Transaction(int ID, string CustomerID, DateTime Date)
И я хочу выбрать всех клиентов и их последнюю дату покупки в порядке возрастания. Я попытался с помощью псевдонимов и создания объединения с идентификатором клиента и идентификатор клиента сделки, но я получаю исключение, говоря
не мог решить собственности: клиент: Сделки
Transaction transaction = null;
Customer customer = null;
session.QueryOver<Transaction>(() => transaction).
SelectList(list => list.
Select(() => customer.Name).
SelectGroup(() => transaction.CustomerId).
SelectMin(() => transaction.Date)).
JoinQueryOver(() => customer).Where(() => customer.Id == transaction.Id).
OrderBy(Projections.Min<Transaction>(trans => trans.Date)).Asc.
List<object[]>().
ToList();
Я не понимаю почему он пытается искать свойство клиента в транзакции, единственный случай, который они выполняют в строке, находится в предложении where. Я, вероятно, не очень хорошо получил «Присоединиться».
Может ли кто-нибудь пролить свет на это исключение?
Я бы сказал, что ответ здесь http://stackoverflow.com/q/20528760/1679310 –