У меня есть следующий запрос LINQ, который использует NHibernate для репозитория с резервной копией SQL Server ...
var casesByCaseOwner = this.preGrantDetailRepository.All
.Where(x => x.CaseFileLocation.Id == cflId)
.GroupBy(x => x.CaseOwner)
.Select(x => new StagSummaryForCfItem
{
Id = x.Key.Id,
Description = x.Key.Name,
NumberOfCases = x.Count(),
UninvoicedNetFee = x.Sum(y => y.UninvoicedNetFee),
UninvoicedDisbursement = x.Sum(y => y.UninvoicedDisbursement)
}).AsEnumerable();
Однако он жалуется, что SQL Server не удается сгруппировать по столбцу CaseOwner.Name
, поскольку онне содержится в списке выбора или предложении группы.Исходя из мира баз данных, я понимаю эту ошибку, однако я не уверен, как заставить NHibernate группировать по Id
и Name
, но все еще имеет сущность CaseOwner
, доступную мне в моем Select.