title: LINQ inner WHERE - inner collection not contains string
body: <p>Suppose I have the following collection:</p>
  <pre><code>ONE
  - Banana
  - Mango
  
  TWO
  - Apple
  - Mango
  
  THREE
  - Orange
  - Pear
  </code></pre>
  <p>I want to get only the collection which do not have Mango in it, such as:</p>
  <pre><code>THREE
  - Orange
  - Pear
  </code></pre>
  <p>The following example returns wrong result:</p>
  <pre><code>List&lt;Order&gt; list = new List&lt;Order&gt; {
                  new Order { Id = 1, Name = &quot;ONE&quot;, Items = new List&lt;Items&gt; { new Item { Id = 1, Nama = &quot;Banana&quot; }, new Items { Id = 2, Nama = &quot;Mango&quot; } }},
                  new Order { Id = 1, Name = &quot;TWO&quot;, Items = new List&lt;Items&gt; { new Item { Id = 1, Nama = &quot;Orange&quot; }, new Items { Id = 2, Nama = &quot;Mango&quot; } }},
                  new Order { Id = 1, Name = &quot;THREE&quot;, Items = new List&lt;Items&gt; { new Item { Id = 1, Nama = &quot;Pear&quot; }, new Items { Id = 2, Nama = &quot;Chery&quot; } }},
              };
  
  var result = list.Where(x =&gt; x.Item.Any(y =&gt; y.Nama != &quot;Mango&quot;)).ToList();
  </code></pre>