title: Azure TableServiceEntity - storing complex classes
body: <p>Storing data in Azure Table Services via TableServiceEntity you're limited to usual basic types (int, string, datetime etc) that have public get/set.</p>
  <p>There is none of the usual magic you've come to expect from serialization that deals with collections, complex types, inheritance etc.</p>
  <p>Different ways of dealing with this could be</p>
  <ul>
  <li>Hooking into the <a href="http://convective.wordpress.com/2009/12/30/entities-in-azure-tables/" rel="noreferrer">WritingEntity and ReadingEntity</a> events to manually set properties (inc dealing with complex types using some serialization method to plain string property).</li>
  <li>Similar to above but use an additional 'storage class' to translate between YourClass &lt;-&gt; YourClassStorage &lt;-&gt; TableServices</li>
  <li>Using a framework such as <a href="http://code.google.com/p/lokad-cloud/wiki/FatEntities" rel="noreferrer">Lokad.Cloud's FatEntities</a> or <a href="http://www.lucifure.com/" rel="noreferrer">Lucifure</a></li>
  </ul>
  <p>Have I missed anything? Which method may be best in which circumstances?</p>