一.Json的简介。

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。

JSON 数据的书写格式是:名称/值对。名称/值对组合中的名称写在前面(在双引号中),值对写在后面(同样在双引号中),中间用冒号隔开。

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

二.Json的好处。

JSON作为数据包格式传输的时候具有更高的效率,这是因为JSON不像XML那样需要有严格的闭合标签,这就让有效数据量与总数据包比大大提升,

从而减少同等数据流量的情况下,网络的传输压力

三.解析Json。

首先,添加引用: Newtonsoft.Json。之后可以使用JObject读写字符串,例如:

JObject  json = JObject.Parse(strJson);
JArray  jArr = (JArray)json["list"];
JValue  taotalValue =(JValue)totalJson["total"];
foreach (JObject item in jArr.Children())
{
      string  deviceID = item["DCODEID"].ToString().Trim();
}


四.Json的应用。
 南京学思由于Json较高的传输效率,所以应用于数据传输。最简单的例子如:通过零件的零件名、零件类型、上传时间、上传人员来查询出零件文件的路径
和零件文件。那么这些传入参数和传出参数都可以作为Json值进行传输。

{
     "name":"searchFileList",
     "category" : "OPEN",
     "desc":"检索文件",
     "request" : {
         "parameters" : [
             {"name":"pCODE", "type":"STRING",  "desc":"文件名"},
             {"name":"pFILESTYPE", "type":"STRING",  "desc":"文件类型"},
             {"name":"pDRAWCREATOR", "type":"STRING",  "desc":"绘图者"},  
             {"name":"pINTIME", "type":"STRING",  "desc":"导入时间"},  
         ]
     },
     "response" : {
         "results":[
             {
                 "name": "list",
                 "segments":[
                     {"name":"ID", "type":"STRING",  "desc":"ID"}, 
                     {"name":"CODE", "type":"STRING",  "desc":"CODE"}, 
                     {"name":"FILEVERSION", "type":"STRING",  "desc":"版本"}, 
                     {"name":"FILENAME", "type":"STRING",  "desc":"文件名"},
                     {"name":"FILESIZE", "type":"STRING",  "desc":"文件大小"},
                     {"name":"FILEURL", "type":"STRING",  "desc":"文件路径"}
                 ]
             }
         ]
     }
 }

这样传入参数就在request对象中,传出参数在response对象中,只要将传入参数写成Json字符串格式,传出参数由Json字符串转化成String类型。