7

I have written a nifty function that will accept a system.object, reflect on its properties and serialize the object into a JSON string. It looks like this:

public class JSONSerializer
{

    public string Serialize(object obj)

Now, I want to be able to do this to serialize a dynamic/ExpandoObject, but because my serializer uses reflection, it isn't able to do it. What's the workaround?

public class Test
{
    public dynamic MakeDynamicCat()
    {
        dynamic newCat = new ExpandoObject();
        newCat.Name = "Polly";
        newCat.Pedigree = new ExpandoObject();
        newCat.Pedigree.Breed = "Whatever";

        return newCat;
    }

    public void SerializeCat()
    {
        new JSONSerializer().Serialize(MakeDynamicCat());
    }
}
Water Cooler v2
  • 32,724
  • 54
  • 166
  • 336
  • possible duplicate of [How do I reflect over the members of dynamic object?](http://stackoverflow.com/questions/2634858/how-do-i-reflect-over-the-members-of-dynamic-object) – nawfal Dec 20 '13 at 05:32

1 Answers1

2

I think, this question is very similar: How do I reflect over the members of dynamic object?

At least the answers should help you too.

Community
  • 1
  • 1
Alexandra Rusina
  • 10,991
  • 2
  • 20
  • 16