title: Using LINQ, how to select conditionally some items but when no conditions select all?
body: <p>I want to select elements from myCollection using myFilters for filtering:</p>
  
  <pre class="lang-cs prettyprint-override"><code>var myFilters = new List&lt;string&gt; {"111", "222"};
  var myCollection = new List&lt;SomeClass&gt; {
                        new SomeClass ("111"), 
                        new SomeClass ("999")
                     };
  
  from filter in myFilters
  from item in myCollection
  where item.Name == filter
  select item
  </code></pre>
  
  <p>would return the "111" item.</p>
  
  <p>However, if myFilters is empty I want to return all the items from myCollection.</p>
  
  <pre class="lang-cs prettyprint-override"><code>var myFilters = new List&lt;string&gt; ();
  var myCollection = new List&lt;SomeClass&gt; {
                            new SomeClass ("111"), 
                            new SomeClass ("999")
                      };
  
  // Here's where I'm lost...
  from filter in myFilters
  from item in myCollection
  where item.Name == filter
  select item
  </code></pre>
  
  <p>would return all items ("111" and "999").</p>