title: How to correct parse query string in C# if value contains ampersand?
body: <p>I need parse query string: <code>?artist=singer1 &amp; singer2&amp;song=name song</code></p>
  
  <p>Static method <code>HttpUtility.ParseQueryString</code> doesn't work the way I want if value contains ampersand like "singer1 &amp; singer2".</p>
  
  <p>For example: </p>
  
  <pre><code>string qs = "?artist=singer1 &amp; singer2&amp;song=name song"; 
  NameValueCollection query = HttpUtility.ParseQueryString(qs);
  </code></pre>
  
  <p>Result is:</p>
  
  <blockquote>
    <ol>
    <li>artist = singer1</li>
    <li>null = singer2</li>
    <li>song = name song</li>
    </ol>
  </blockquote>
  
  <p>I would like result</p>
  
  <pre><code>artist = singer 1 &amp; singer2
  song = name song
  </code></pre>
  
  <p>Any idea?</p>