我在数据库中有以下的视图
SELECT YEAR(Received) AS YEAR,
MONTH(Received) AS MONTH,
LEFT(DATENAME(MONTH, Received), 3) AS MMM,
COUNT(Received) AS Submissions,
COUNT(Quoted) AS Quotes,
COUNT(Bound) AS Binders,
COALESCE (SUM(BndPremium), 0) AS Premium,
ProducerID
FROM dbo.Quote AS Q WITH (NOLOCK)
WHERE (Received >= DATEADD(year, - 1, GETDATE()))
GROUP BY ProducerID, YEAR(Received), MONTH(Received), DATENAME(MONTH, Received)
我已经将视图添加到我的EDMX中。我通过以下方式查询视图:
var submissions = from s in db.WSS_PortalSubmissions
where s.ProducerID == ID
select s;
在“提交”结果中,但是是第一个月的12个副本,而不是过去12个月的结果。今天在Linq中运行查询时,我得到了2016年4月份结果的12个副本。如果我在SSMS中运行查询,我会得到预期的结果,即最近12个月的列表。
我尝试了.ToList()、.ToArray(),甚至尝试了一些结果的排序,但结果并未改变。它只给了我第一个月的12个副本。有什么原因我没有看到吗?
b.WSS_PortalSubmissions.AsNoTracking()
,以便EF不会跟踪实体,这应该强制它仅返回查询结果,而不是基于主键进行跟踪。 - Igor