title: Why does Boolean.ToString output "True" and not "true"
body: <pre><code>true.ToString() 
  false.toString();
  
  Output:
  True
  False
  </code></pre>
  
  <p>Is there a valid reason for it being "True" and not "true"? It breaks when writing XML as XML's boolean type <em>is lower case</em>, and also isn't compatible with C#'s true/false (not sure about CLS though).</p>
  
  <p><strong>Update</strong></p>
  
  <p>Here is my very hacky way of getting around it in C# (for use with XML)</p>
  
  <pre><code>internal static string ToXmlString(this bool b)
  {
      return b.ToString().ToLower();
  }
  </code></pre>
  
  <p>Of course that adds 1 more method to the stack, but removes ToLowers() everywhere.</p>