[LINQ] złożone zapytanie (join, cotains)

0

Hej ho!
mam 2 pytania dotyczące linq:
mam taką strukturę bazy:
http://imageshack.us/photo/my-images/822/diagramu.jpg/

w Order znajduje się wiele Products.
Order posiada jednego Customera , zaś Customer może mieć wiele ContactPersons.

Pytanie pierwsze
Chcę żeby zapytanie w linq zwróciło mi obiekty: ProductsOrder ( innymi słowy produkty w zamówieniach )
tylko te, które znajdują się w Order, które posiada Customera, który to posiada ContactPerson o firstName="Jan"

Proszę o pomoc w skonstruowaniu zapytania w linq

pytanie drugie:
chcę wyświetlić Contact persons które zawierają w firstName lub LastName słowo: "jan"
zrobiłem coś takiego
var r = db.ContactPerson.Where(x => x.firstName.Contains("jan") || x.lastName.Contains("jan"));
Czy to jest najbardziej poprawna metoda otrzymania takich wyników?

Dzięki za pomoc! :)

0

Korzystasz z Linq to SQL czy Linq to Entities? W gruncie rzeczy mapowania powinny zrobić swoje i żadnych joinów jawnie nie musiałbyś nawet robić, navigation properties wystarczą.

0

korzystam z linq to sql.
Być może joiny nie będą potrzebne ale nie wiem jak zrobić to zapytanie. Głównym problemem dla mnie jest to, że Customer posiada wiele ContactPersons.

1 użytkowników online, w tym zalogowanych: 0, gości: 1