Я работаю над этим методом расширения и пытаюсь ограничить T так, чтобы метод не применялся к КАЖДОМУ объекту ... только к тем, с которыми DataContractJsonSerializer хорошо работает
public static string ToJSONString(this object obj)
{
using (var stream = new MemoryStream())
{
var ser = new DataContractJsonSerializer(obj.GetType());
ser.WriteObject(stream, obj);
return Encoding.UTF8.GetString(stream.ToArray());
}
}