前台数据Json的转换和后台的保存

  • 前台对象的获取,根据用的地方不同,一个示例代码

通过Save方法能把数据转换成一个字符串,通过Ajax或者其他方法传递到后台进行处理、保存。

function Save() {
  var arrObj = [];
  for(var i = 0; i < values.length; i++) {
      var value = values[i];
      var obj = new Object();
      obj.ID = value .id;
      obj.SourceID = value .source.id;
      obj.TargetID = value .target.id;
      arrObj.push(obj)
  }
  var arrObjStr = obj2str(arrObj);
}
functon obj2str(o) {
  var r = [];
  if (typeof o == "string") return "\"" + o.replace(/([\'\"\\])/g, "\\$1").replace(/(\n)/g, "\\n").replace(/(\r)/g, "\\r").replace(/(\t)/g, "\\t") + "\"";
  if (typeof o == "undefined") return "";
  if (typeof o == "object") {
  if (o === null) return "null";
  else if (!o.sort) {
    for (var i in o)
      r.push(i + ":" + this.obj2str(o[i]))
      r = "{" + r.join() + "}"
  } else {
    for (var i = 0; i < o.length; i++)
      r.push(this.obj2str(o[i]))
      r = "[" + r.join() + "]"
    }
    return r;
  }
  return o.toString();
}
  • 传递到后台的格式

[{ID:"id1",SourceID: "SourceID1",TargetID:"TargetID1"},{ID:"id3",SourceID: "SourceID3",TargetID:"TargetID3"},{ID:"id3",SourceID: "SourceID3",TargetID:"TargetID3"}]

下面是fiddler的截图

  • 后台解析保存方法

下面代码是把string转换成Object[]的方法,并且取到没一个值,然后随意你怎么保存了!

//需要添加System.Web.Extensions的引用,并且需要是.NETFrameWork3.5或者4(非Client Profile)
using System.Web.Script.Serialization;
JavaScriptSerializer serializer = new JavaScriptSerializer();
var arrObj = (object[])serializer.DeserializeObject(arrObjStr);
 foreach (var item in arrObj ) {
    Dictionary<string, object> tempObj = (Dictionary<string, object>)item;
    string id = tempObj["ID"].ToString();
    string socurceIDStr = tempObj["SourceID"].ToString();
    string targetIDStr = tempObj["TargetID"].ToString();
}

 

转载于:https://www.cnblogs.com/unlean/archive/2012/12/05/JavaScriptSerializer.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值