title: Negating Func<T, bool> in lambda expression
body: <pre><code>Func&lt;T, bool&gt; expr = x =&gt; x.Prop != 1;
  
  somelist = somelist.Where(expr);
  </code></pre>
  
  <p>So far so good. But I would like to negate <code>expr</code> like this:</p>
  
  <pre><code>somelist = somelist.Where(!expr);
  </code></pre>
  
  <p>Which result in a compile error: <code>Cannot apply ! operator to operand of type Func&lt;T, bool&gt;</code>.</p>
  
  <p>Do I have to create another expression variable for this?</p>
  
  <pre><code>Func&lt;T, bool&gt; expr2 = x =&gt; x.Prop == 1;
  </code></pre>