title: Can you control the order in which the TagBuilder class renders attributes?
body: <p>I know this is kind of obsessive, but is there a way to control the order that the <code>TagBuilder</code> class renders the attributes of an HTML tag when you call <code>ToString()</code>?</p>
  
  <p>i.e. so that </p>
  
  <pre><code>var tb = new TagBuilder("meta");            
  tb.Attributes.Add("http-equiv", "Content-Type");            
  tb.Attributes.Add("content", "text/html; charset=utf-8");    
  tb.ToString(TagRenderMode.SelfClosing)
  </code></pre>
  
  <p>will return</p>
  
  <pre><code>&lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&gt;
  </code></pre>
  
  <p>not</p>
  
  <pre><code>&lt;meta content="text/html; charset=utf-8" http-equiv="Content-Type" /&gt;
  </code></pre>
  
  <p>Changing the order that you add the attributes doesn't change it, it seems to be rendering in alphabetical order</p>