title: How to define a class whose properties change in runtime?
body: <p>I have a class called Attributes </p>
  
  <pre><code>public class Attributes
  {
      public string Length { get; set; }
      public string Size { get; set; }
      public string Color { get; set; }
      public string Material { get; set; }
      public string Diameter { get; set; }
  }
  </code></pre>
  
  <p>This class is populated from a call to a web service that returns JSON. The web service returns a different set of attributes each time and it is not possible to define all the attributes at compile time as this could run into thousands. </p>
  
  <p>What is the best way to model such a class in c#?</p>