title: "Does Not Contain" dynamic lambda expression
body: <p>The code below does "Contain" expression:</p>
  
  <pre><code>private static Expression&lt;Func&lt;T, bool&gt;&gt; Contains&lt;T&gt;(string property, string value)
  {
      var obj = Expression.Parameter(typeof(T), "obj");
      var objProperty = Expression.PropertyOrField(obj, property);
      var contains = Expression.Call(objProperty, "Contains", null, Expression.Constant(value, typeof(string)));
      var lambda = Expression.Lambda&lt;Func&lt;T, bool&gt;&gt;(contains, obj);
      return lambda;
  }
  </code></pre>
  
  <p>I am not very familiar with Expressions and I don't know how to put negation into the expression function and cannot find any suitable method in "Expression" class. Is there any similar way to create "Does Not Contain" expression dynamically?</p>