title: .NET DefaultValue attribute
body: <p>I've heard people say a few different things about the <code>DefaultValue</code> attribute including:</p>
  
  <ul>
  <li>
  "It sets the value of the property before anything else uses it."
  </li>
  <li>
  "It doesn't work for autoproperties."
  </li>
  <li>
  "It's only for decoration. You must manually set actual default values."
  </li>
  </ul>
  
  <p>Which (if any) is right? Does <code>DefaultValue</code> actually set default values? Are there cases where it doesn't work? Is it best just not to use it?</p>