Most of the IQueryable methods, such as Where(), take Expression
Trees.  The lambda expressions you write in code are actually compiled
to these.  You can also build these up at runtime and the Expression
class contains functions to help with this.

I'm not familiar with these methods, but here are a few pages on MSDN
you may find useful:

http://msdn.microsoft.com/en-us/library/bb882637.aspx (How to: Use
Expression Trees to Build Dynamic Queries)

http://msdn.microsoft.com/en-us/library/bb397951.aspx (Expression
Trees)

http://msdn.microsoft.com/en-us/library/system.linq.expressions.aspx
(System.Linq.Expressions)

   Regards,

           Matt.


On Aug 25, 11:37 am, Razwan Sarwar <[email protected]>
wrote:
> Hi
>
> I am fairly new to LINQ and now face a problem that i can not solve
> alone, i need help. I have tried many things but not found a solution
> yet.
>
> I have a webform with 2 dropdown lists and a text box. I am letting
> the user build a where statement based on what they choose.
> For example dropdownlist1: (dealername, dealernumber, location),
> dropdownlist2(<,>,<=,>=,==), and textbox is a free text field.
>
> The where will be built as "DealerNumber <= 1001"
>
> Now my code, will it be possible to change the where part to
> incorporate my controls? I am using "q = q.Where(c => c.DealerNumber
> == strDealerNumber);"
> can this be changed to:
>
> field = dropdownlist1; condition = dropdownlist2; filter = textbox;
> q = q.where(field + " " + condition + " " +  filter);
>
> CODE:
>
>             using (PartsClassesDataContext db = new
> PartsClassesDataContext())
>             {
>                 List<spSelectFromMasterPartsResult> lst =
> db.spSelectFromMasterParts  ().ToList();
>
>                 var q = from c in lst
>                         select c;
>
>                  q = q.Where(c => c.DealerNumber == strDealerNumber);
>
>                 return q.ToList();
>             }
>
> Many thanks i appreciate all your help
>
> Raz
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"DbLinq" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/dblinq?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to