在EF中的派生类上加载导航属性

时间:2016-06-24 20:13:47

标签: entity-framework software-design

我正在社交媒体网站上工作,我们正在开发Facebook风格的通知系统 enter image description here

问题是我们有一个Notification基类,并且有很多不同的派生通知类,如MentionNotification,LikeNotification。

这个派生类很多次都有自己的导航属性,所以我们必须将NotificationRepository改为包含所有这些新的导航属性,

我无法找到避免修改Base存储库以避免N + 1查询的方法。

欢迎任何想法

1 个答案:

答案 0 :(得分:0)

如果你正在使用Table Per Type ......那么......

SELECT tt.Station, STUFF((SELECT ', ' + c.client_code 
    FROM client c
    JOIN  #TempTable tt2  
       ON tt2.clientId = c.ID 
       AND tt2.Station = tt.Station
    FOR XML PATH('')),1,1,'') [Values]            
FROM
GROUP BY tt.Station

(在我的头顶,我确定它是这样的......)