拼接json时小心C#中bool类型转化

C#中bool类型的值,在ToString时会有如下转化:true—>Ture ; false—>False
这是拼接到json串中就会出现如下结果:
{ "no": "001", "name": "yueye", "age": 32, "isStudent": True }

这种数据在android中进行解析,没有出现什么问题(没有详细进行了解)
但是在ios中进行解析的话,无法对isStudent的值进行识别,解析值一直为null

在百度百科上了解到的:

JSON 值可以是:

数字(整数或浮点数)
字符串(在双引号中)
逻辑值(true 或 false)
数组(在方括号中)
对象(在花括号中)
null

Json中的布尔值是指的小写的true和false。在一些json格式化工具中也会进行矫正。

总之:小心C#中bool转化为sting时的大小写问题,避免错误。

Author:月夜
Time:2015-07-01

时间: 2024-11-05 13:39:50

拼接json时小心C#中bool类型转化的相关文章

JSON 的数据类型 以及传递bool类型数据的处理方式

ajax中使用json传递数据时,其它数据类型都不是问题,但是如果服务器端生成的JSON中有bool类型的数据时,到客户端解析时出现了小小的问题,总结如下: 服务器返回的JSON为: 代码如下: {"TypeID":[1037],"Title":"河北软件职业技术学院","Intro":"","IsLink":"false","LinkUrl":&

js中的类型转化

1.转为Boolean boolean 布尔值  表示“true” 或“false” 在使用if(xx)的时候,括号内的xx都需要转化为布尔值,除了  undefined  .null .false . NaN .  ' ' . 0 . -0   其他值都转为true. 2.对象转基本类型 对象在转换基本类型时,首先会调用 valueOf 然后调用 toString. 3.四则运算符产生的类型转化 ①.在加法运算中,当一方是字符串,则另一方也转化为字符串 并且在加法运算中,可能触发三种类型的转化

Springmvc框架-json数据格式传递过程中-将时间戳转化成标准的日期格式[email protected]

在上一个小demo中,我们能够看出,其实返回的日期格式也是不对的,现在返回的是一个时间戳,并不是一个标准的日期格式. 解决办法: 第一种:在要转化的实体类中添加@JSONField注解 第二种:配置fastjson的消息转换器,来处理日期格式的问题 springmvc-servlet.xml 1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.spring

ASP.NET MVC5 DropDownListFor中bool?类型赋值为null的解决办法

使用ToString() 将null转换为string即可 @Html.DropDownListFor(model => model.AllowedPublished, new List<SelectListItem> { new SelectListItem() { Text = "未审核", Value = (null as bool?).ToString() }, new SelectListItem() { Text = "已通过", Va

JavaScript中bool类型的转化

JavaScript 中 if() 圆括号中的表达式将被看做布尔值来处理.这时就涉及到一些转化的问题. 1.特殊值undefined和null变成false. 2.数字0和NaN变成false. 3.空字符串变成false. 4.所有其他值都变成true. 由于上面的关系.假设我们判断浏览器是否支持一个对象,就可以用if语句了. 如果判断浏览器是否支持 样式表编辑. function initStyle(){ if(!document.styleSheets) return;//如果不支持这个属

RobotFramework:发现一个大坑,当post接口入参为json时,千万不能用sojson转化后的json串,直接用浏览器粘过来的就行

问题背景: 和以往一样愉快的进行着自动化测试,突然就不停的提示我,“程序异常”,查看log发现data中的json变为了数组?????? 那算了,我不先组装入参数据直接data=json入参吧,what`s up, Fu.......................,查看半天post requests关键字的入参,发现没有问题啊. 重新打开ride吧! 这什么工具啊,这么坑我. 解决: 回想之前接口测试用例写的多了,这什么鬼啊,会不会是我json串粘贴的有问题,算了直接把F12抓包过来的入参直接

集合中的类型转化 以及求集合中元素的最大值,平均值

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Collections; namespace 集合的小练习 { class Program { static void Main(string[] args) { //创建一个集合,里面添加一些数字,求平均值以及和,最大值. ArrayLis

ajax传JSON时设置的contenttype导致JAVA中request.getParameter(&quot;&quot;)怎么也接收不到数据

ajax传JSON时设置的contenttype默认值是application/x-www-form-urlencoded, 当ajax传JSON时设置的contenttype 如果是application/json或者text/json时,JAVA中request.getParameter("")是接收不到数据的. 因为在java后台会认为你传递的是一个纯文本流,而非键值对,是不能存入requestMap的. 可以把流读取出来转成json转成lsit或对象等,在Spring中使用@R

vc++,MFC 中,用ado执行sql server语句时,并且对返回值真假判断的例子,即bool类型

MFC VC++ 中的对数据库中的表进行查询,判断SQL语句是否执行成功 若存在返回bool值true(1),若失败返回bool值false(0). 简单bool类型代码如下: CString sql,Result; sql.Format(_T("select * from [dbo].[%s]"), Name);// Name是所要查找数据库中表的名字 BOOL bool_temp = TheAdoData.ExecuteSQL((_bstr_t)sql);//判断上一条SQL语句是