JSON字符串2:
{"success":true,"data":{"name":"张三","moulds":{"stockImport":true,"stockExport":true,"justifyLocation":true,"justifyBin":false,"binRelease":false}}}
在控制台应用程序下的完整代码:
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string json = "{"success":true,"data":{"name":"张三","moulds":{"stockImport":true,"stockExport":true,"justifyLocation":true,"justifyBin":false,"binRelease":false}}}";
Data data = JsonConvertDeserializeObject<Data>(json);
ConsoleWriteLine(datadatamouldsbinRelease);//输出False
}
}
public class Data
{
public Boolean success { get; set; }
public Data1 data { get; set; }
}
public class Data1
{
public string name { get; set; }
public Data2 moulds { get; set; }
}
public class Data2
{
public Boolean stockImport { get; set; }
public Boolean stockExport { get; set; }
public Boolean justifyLocation { get; set; }
public Boolean justifyBin { get; set; }
public Boolean binRelease { get; set; }
}
}
JSON字符串3:
{
"success": true,
"data": {
"id": 100001,
"bin": "JIT-3JS-2K",
"targetBin": "JIT-3JS-3K",
"batchs": [
"B20140101",
"B20140102"
]
}
}
他的问题主要是不知道batchs这里怎么处理,其实很简单就是一个数组而已。
完整代码如下:
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string json = "{"success": true,"data": {"id": 100001,"bin": "JIT-3JS-2K","targetBin": "JIT-3JS-3K","batchs": ["B20140101","B20140102"]}}";
Data data = JsonConvertDeserializeObject<Data>(json);
foreach (var item in datadatabatchs)
{
ConsoleWriteLine(item);//输出:B20140101、B20140102
}
}
}
public class Data
{
public Boolean success { get; set; }
public Data1 data { get; set; }
}
public class Data1
{
public Int32 id { get; set; }
public string bin { get; set; }
public string targetBin { get; set; }
public string[] batchs { get; set; }
}
}
除了上述返回类的实体对象做法之外,JSONNET还提供了JObject类,可以取自己指定节点的内容。
比如:










