我有兩個EF類 - 一個叫event
,另一個叫user
。LINQ to Entity,具有導航屬性的子查詢
event
包含許多與正在運行的事件相關的字段,並且已經由Entity Framework(v6我認爲)生成。 user
模擬用戶對象。
event
包含導航屬性,該屬性是已註冊參加活動的用戶的列表。
我想要做的是過濾用戶列表,使其包含或者沒有條目(user_id x沒有預訂),或者它包含一個條目(user_id x did book)。
我目前所面對的是什麼:
var evts = context.events.Where(e=>event_id<10);
列出的前十個事件。
events
有一個導航屬性,名爲user_bookings
這是一個列表user
- 如何過濾用戶,以便我只能附加用戶提供的user_id?
編輯
爲了澄清(我不認爲我的工作做得很好解釋) - 我想事件列表,無論用戶是否已註冊了事件與否。我想要做的是將LINQ返回的用戶列表限制爲沒有用戶(當前用戶尚未預定此事件)或一個用戶(當前用戶已預訂它)。
沒有與像context.users.Where的問題(X => x.Events.Count <= 1 )? – InferOn
我想要替換的東西類似於這個SQL:'select e。*,(event_user_booking b中的select count(*),其中e.event_id = b.event_id和[email protected]_id)來自事件e e.event_id <10' 由於Entity Framework創建了我的對象,因此表event_user_booking不作爲對象包含在內,因爲它只是查找表來解決事件和用戶之間的多種關係。 –