Populate a c# object with random values
<p>I want to populate an object with random data at runtime.</p>

<p>There are lots of tools (like nBuilder) but the rely on generics and I don't know the object's type until runtime.</p>

<p>Any ideas?</p>

<p><strong>EDIT:</strong> This has nothing to do with testing or test data. I have a WCF Service, and for any data contract type I want to deserialize it to XML and JSON and display the output. The deserialized output can then be used by other developers and testers as a reference guide.</p>

<p>If the object is not populated the deserialized output is not meaningful.</p>

<p>I don't want to build proxies, or use WSDL etc.</p>

<p>I got nBuilder working with reflection. But its only populating value types?</p>
