当运行这个Linq查询时,我收到一个“NotSupportedException”错误。 “指定的方法不受支持。”是什么方法?即使将“Count()”注释掉,错误也是相同的。有Null内部异常。
堆栈跟踪:
在Hydra.WPF.ViewModels.AddressListViewModel._primaryMemberListWorker_DoWork(对象 发件人,DoWorkEventArgs e)中,在M:\ Projects \ Hydra \ WPF \ ViewModels \ AddressList \ AddressListViewModel.cs中:第1377行at System.ComponentModel.BackgroundWorker.WorkerThreadStart(对象 argument)
SQL查询:
堆栈跟踪:
在Hydra.WPF.ViewModels.AddressListViewModel._primaryMemberListWorker_DoWork(对象 发件人,DoWorkEventArgs e)中,在M:\ Projects \ Hydra \ WPF \ ViewModels \ AddressList \ AddressListViewModel.cs中:第1377行at System.ComponentModel.BackgroundWorker.WorkerThreadStart(对象 argument)
SQL查询:
Select * From _Members
Inner Join AddressDetailsCCN a on a.MemberId=_Members.MemberID
Inner Join
(
Select Address+Address2 as CombinedAddress
From AddressDetailsCCN Where ListId=84
group by Address+Address2
Having COUNT(*)>1
) B on B.CombinedAddress=A.Address+A.Address2
Where CombinedAddress is not null AND CombinedAddress!='' AND a.ListId=84
Order by ClientID, CombinedAddress
Linq:
var grouped =
(from mem in session.Query<Member>()
join detail in session.Query<Detail>() on mem.Id equals detail.Member.Id
join d2 in (from d3 in session.Query<Detail>()
where d3.AddressList.Id == criteria.AddressList.Id
group d3 by d3.Address + d3.Address2 into x
where x.Count() > 1
select x) on detail.Address+detail.Address2 equals d2.Key
where detail.AddressList.Id==criteria.AddressList.Id
select mem);