比方說,我有圖紙和資料LINQ to SQL和加入兩個表或條款
Dim myPlans = _context.Plans.Where(predicate1)
Dim myDocuments = _context.Documents.Where(predicate2)
我已經構造的地方,爲每個PredicateBuilder條款。所以,myPlans和myDocuments有一個正確的SQL語句。
我想要做的是將這兩個表加入到一個linq語句中。我遇到的問題是,默認情況下,AND條件是加入where子句。 (p.name爲「%test%」,p.name爲「%bed%」)或(p.description如「%test%」)和p.description如「%bed%」 )
myDocuments Where子句:(d.name像「%test%」和d.name像「%bed%」)OR(d.description像「%test%」)和d.description像「%bed% 「)
當我將二者結合起來的期望結果WHERE子句:
凡(d.ID = p.ID)AND (myplans where子句上文)OR(myDocument中where子句上文)。意思是,我希望每個表格中的兩個子句都是「或」而不是「和」。
當前結果where子句是: 凡(d.ID = p.ID)AND (myplans where子句上文)AND(myDocument中where子句上文)。意思是,我希望每個表格中的兩個子句都是「或」而不是「和」。
我形成的聲明是這樣的:
Dim test = From d in myDocuments _
Join p in MyPlans on d.ID Equals p.ID _
Select d.Name, p.Name
我喜歡你的答案了。 +1 – 2009-04-25 22:02:55