我有一個多對多的表結構稱爲PropertyPets。它包含一個由PropertyID(來自Property表)和一個或多個PetID(來自Pet表)的雙主鍵組成。LINQ多對多有或包含子句(和一個扭曲)
接下來我有一個搜索屏幕,人們可以從jquery multiple select下拉選擇多個寵物。比方說,有人選擇狗和貓。
現在,我希望能夠返回在多對多表格PropertyPets中包含兩個狗和貓的所有屬性。我試圖用Linq to Sql來做到這一點。
我已經看過了包含子句,但它似乎並沒有對我的要求工作:
var result = properties.Where(p => search.PetType.Contains(p.PropertyPets));
這裏,search.PetType是的ID,用於狗和貓的int []數組(在多選下拉菜單中選擇)。問題首先,Contains需要一個字符串,而不是類型爲PropertyPet的IEnumerable。其次,我需要找到既有狗又有貓的特性,而不僅僅是包含一個或另一個。
謝謝你的任何指針。
傑夫 - 它的作品!謝謝。非常簡潔,看起來非常有創意,可以啓動。 – Chris 2011-02-24 16:57:16
@Chris - 沒問題。樂於幫助 :) – 2011-02-24 18:01:43