title: name 'X509Certificate2UI' does not exist in the current context
body: <p>Does anyone had problem using X509Certificate2UI class in an Asp Net MVC4 application</p>
  
  <pre><code>using System.Security.Cryptography.X509Certificates;
  
  
  private static X509Certificate2 PickCertificate(StoreLocation location, StoreName name)
  {
  
      try
      {
          store.Open(OpenFlags.ReadOnly);
          //PROBLEM IS HERE
          X509Certificate2 cert = X509Certificate2UI.SelectFromCollection(store.Certificates, "Caption", "Message", X509SelectionFlag.SingleSelection)[0]; 
  }
      catch (Exception)
      {               
          throw;
      }
  }
  </code></pre>
  
  <p>It complains that there is no 'X509Certificate2UI' name in the current context
  No idea since the class is in System.Security.Cryptography.X509Certificates;</p>