1

I am sure this is something really simple, but I am going bonkers trying to figure out why.

I have the following code:

string condition = string.Format("{0}.Contains({1})", column, value);

var query = DataContext.MyTable.Where(condition);

The strange thing that I am getting is an error saying:

Argument cannot convert from string to 'System.Linq.Expressions.Expression<System.Func<Context.MyTable, bool>>'

I thought that you could pass in a string to the where clause without a problem such as indicated in this post:

Dynamic WHERE clause in LINQ

Any thoughts on what I am missing? Perhaps an invalid namespace (I have System.Linq)?

Community
  • 1
  • 1
CodeLikeBeaker
  • 20,682
  • 14
  • 79
  • 108

2 Answers2

3

That answer has a link to a library that you need to download.

Giorgi
  • 30,270
  • 13
  • 89
  • 125
3

You need to:

  1. Download dynamic query with the C# samples.
  2. Reference it in your project.
  3. Add using System.Linq.Dynamic
  4. Follow the format specified in the documentation for that library.
Craig Stuntz
  • 125,891
  • 12
  • 252
  • 273
  • Thank you, I am giving you accepted answer only because you answered first and I found the information before the other person posted and I did not see his post until after I got it to work. This worked like a charm. Thanks. – CodeLikeBeaker Feb 22 '10 at 19:16