title: Using PrincipalSearcher to find users with "or" parameters
body: <p>Is it possible to use <code>System.DirectoryServices.AccountManagement.PrincipalSearcher</code> to search based on multiple parameters using "or" (not "and").</p>
  
  <p>i.e. </p>
  
  <pre><code>// This uses an and
  //(&amp;(objectCategory=person)(!UserAccountControl:1.2.840.113556.1.4.803:=2)(&amp;(SAMAccountName=tom*)(DisplayName=tom*)))
  var searchPrinciple = new UserPrincipal(context);
  searchPrinciple.DisplayName =  "tom*";
  searchPrinciple.SamAccountName = "tom*";
  
  var searcher = new PrincipalSearcher();
  searcher.QueryFilter = searchPrinciple;
  
  var results = searcher.FindAll();
  </code></pre>
  
  <p>and I would like a search similar to this (in LDAP) using <code>PrincipalSearcher</code> (not <code>DirectorySearcher</code>)</p>
  
  <pre><code>// (&amp;(objectCategory=person)(!UserAccountControl:1.2.840.113556.1.4.803:=2)(|(SAMAccountName=tom*)(DisplayName=tom*)))
  </code></pre>