using System.Web.Script.Serialization;
Dictionary<string, string> dic = new Dictionary<string, string>();
dic.Add("Post", "123");
string json = (new JavaScriptSerializer()).Serialize(dic);
// {"Post":"123"}
dic中可能有多个键值对。。。
另外这样转出来的结果是{“Key”:"Post",“Value”:"123"}吧?
@Rakanishu5:
dic.Add("Post1", "123");
dic.Add("Post2", "456");
dic.Add("Post3", "789");
{"Post1":"123","Post2":"456","Post3":"789"}
@Yu: 好的,谢谢。问题解决了。用这个DataContractJsonSerializer序列化,和用JavaScriptSerializer序列化的具体区别是什么呢?
我用DataContractJsonSerializer序列化出来都是{“Key”:"Post",“Value”:"123"}这种形式的。
其实也是可以的,因为你看到这个是有规律的吧,然后用用正则表达式匹配出你的值来,当然要是Json!!
转换为{“Post”:null,"PhoneNumber":null,"Address":null,……}这种形式呢?
用个怪异点的方式
ToString().Replace(,)
替换掉
各种替、剪、拼什么的也可以,我看看有没其他方法。。
var serializer = new DataContractJsonSerializer(typeof(User), new DataContractJsonSerializerSettings()
{
UseSimpleDictionaryFormat = true//去掉Key和Value
});