DataContractJsonSerializer无法正确地序列化字典。
而JavaScriptSerializer将字典序列化为{“abc”:“xyz”,“def”:42}
例如,
DataContractJsonSerializer给出[{“Key”:“abc”,“Value”:“xyz”},{“Key”:“def”,“Value”:42}]。
这是真的有问题,我想知道如何在我的WCF服务中正确地序列化Dictionary对象。我正在寻找一个解决方案,需要最小的努力。
ref:http://msdn.microsoft.com/en-us/library/bb412170.aspx
这是解决方法我最后用来在WCF中正确地串行字典:http://social.msdn.microsoft.com/forums/en-US/wcf/thread/765f1569-0422-4471-8ec2-1d03b2026771
使用
DataContractJsonSerializerSettings(自.NET 4.5起可用)可以为您执行此操作:
var serializer = new DataContractJsonSerializer(typeOfObj,new DataContractJsonSerializerSettings() { UseSimpleDictionaryFormat = true });