本测试使用Newtonsoft.Json的序列化工具
一、示例1,将字典类型序列化成Json字符串
Dictionary<string, int> dic = new Dictionary<string, int>() {
{"张三",1},
{"李四",2},
};
string result = JsonConvert.SerializeObject(dic);
Console.WriteLine(result); //{"张三":1,"李四":2}
二、示例2,将Json字符串,反序列化成字典类型
result = "{\"张三\":1,\"李四\":2}";
Dictionary<string, int> dic2 = JsonConvert.DeserializeObject<Dictionary<string, int>>(result);
foreach (var item in dic2)
{
Console.WriteLine($"{item.Key}---->{item.Value}");
}
显示结果如下:
三、使用JavaScript将属性和值,转换成对象,并序列化成后台可以反序列化的字符串
var result = new Object();
var inputList = recDialog.find('input[type="text"]');
inputList.each(function () {
var thisItem = $(this);
result[thisItem.attr('data-id')] = thisItem.val();
});
$('input[name="DynamicRecLayer"]').val(JSON.stringify(result));
关键代码:result[thisItem.attr('data-id')] = thisItem.val();