dynamiczne złączenie w linq 0 c #

   var query = from C in db.clients
    join O in db.orders on c.clientid equals O.clientid
    join P in db.products on O.productid equals P.productid
    select new {C,O};

Chcę przeprowadzić wyszukiwanie na podstawie powyższego połączenia. Parametr wejściowy może być

C.ClientID i / lub P.ProductName i / lub P.ProductType i / lub O.ShippingType

Jak zbudowałbym dynamiczną klauzulę wyszukiwania?

questionAnswers(2)

yourAnswerToTheQuestion