我正在尝试使用以下代码将匿名类型序列化为JSON:
var serializer = new DataContractJsonSerializer(thing.GetType());
var ms = new MemoryStream();
serializer.WriteObject(ms, thing);
var json = Encoding.Default.GetString(ms.ToArray());
但是,在执行时我遇到了以下异常:
类型'<>f__AnonymousType1`3[System.Int32,System.Int32,System.Object[]]'无法序列化。请考虑使用DataContractAttribute特性对其进行标记,并将您想要序列化的所有成员标记为DataMemberAttribute特性。有关其他支持的类型,请参阅Microsoft .NET Framework文档。
据我所知,无法对匿名类型应用属性。是否有其他方法进行序列化或者我漏掉了什么?
System.Web.Extensions.dll
并添加using System.Web.Script.Serialization;
语句。 - randomguy