2010-09-30 3 views
1

Поддерживает ли Hibernate + NhibernateLINQ проекцию внутренних объектов.NHibernate Projections, поддерживает ли проекция внутренних объектов

например. когда я пытаюсь следующим я получаю индекс из исключения оценок на объекте пациента при вызове Queryable.ToList()

  var registrations = from r in _session.Linq<Domain.Registration>().Expand("Patient") select r; 
     var queryable = registrations.Select(
      r => new { r.Id, r.AccountNumber, r.DateAdded, r.DateUpdated, r.Patient.FamilyName, r.Patient}); 
     var list = queryable.ToList(); 

     var workListItems = new List<WorkListItem>(); 
     foreach (var anonymous in list) 
     { 
      var w = new WorkListItem 
      { 
       Id = anonymous.Id, 
       ClientAccountId = anonymous.AccountNumber, 
       DateAdded = anonymous.DateAdded, 
       DateUpdated = anonymous.DateUpdated, 
       Patient = anonymous.Patient 
      }; 
      workListItems.Add(w); 
     } 
     return workListItems; 

ответ

1

Поставщик вен наследия имеет проблемы с этим видом запроса.

Новый интегрированный поставщик в NHibernate 3 справляется с ними без проблем.

Начиная с 2010-09-30, Alpha3 довольно стабилен (с большим количеством усилий, направленных на улучшение провайдера Linq), а выпуск GA ожидается до конца года.

+0

спасибо, только что получил выпуск Alpha3. где я могу получить DLL Nhibernate.Linq. –

+0

Интегрировано (без дополнительных файлов). Просто используйте session.Query вместо session.Linq

+0

Спасибо, это сработало! –

Смежные вопросы