Newtonsoft.Json 序列化时要求输出值都默认带双引号
比如之前我这边做序列化操作的时候int和bool这类数值输出的时候格式为
{
"bool":true,
"int":64
}
现在和ios的app对接,那边的技术说json处理比较麻烦,可能必须要用正则匹配自己一点点处理要求输出式为
{
"bool":"true",
"int":"64"
}
既不管什么类型的数据值都是要求双引号包裹。
Newtonsoft.Json用的不太熟悉,有了解如何设置可以做到这个效果?
把你用到的基本类型(int,bool,float ,etc.)都实现这个类JsonConverter,WriteJson 构造字符串写进去
然后调用这个方法的时候,把你的convert传进去
public static string SerializeObject(object value, params JsonConverter[] converters);
没有测试,基本思路应该是这样没错
简单点把字段全部转成字符串。话说你们ios的开发够差的啊
接口太多。而且实体类和数据库时对应的。
再弄一套实体类或者重新创建匿名对象需要改动的地方太多了。。。
所以想从序列化的方法这里入手。
@lpyedge: 我记得newtonsoft这个里面好像可以自己插入自己定义的序列化器(JsonConverter),可以自定义序列化过程。
对象数量少的话好像JSON的attribute就可以搞定。
先去百度下C#遍历json,然后把每个key 对应的value加上双引号,遇到转换有问题的数据类型,用转义字符\
重载一下类型输出就行了。
自己去查setting