.net 获取json前端数据
来源:互联网 发布:oracle drop数据恢复 编辑:程序博客网 时间:2024/05/22 17:08
1.需求
允许客户在客户端对数据进行修改,以json字符串的形式传入后端并处理,插入数据库。
2解决方法
2.1前端构建json字符串
<script> function save_data() { var type = "Eva_Para_Info"; var val = $('.td1'); var year = $('select').eq(0).find('option:selected').text(); var season = $('select').eq(1).find('option:selected').text(); var j = []; //var row = {}; for (var i = 0; i < val.length; i = i + 2) { var row = {}; row.EVA_YEAR = year; row.EVA_SEASON = season; row.ROLE = val.eq(i).text(); row.WEIGHT = val.eq(i + 1).text(); j.push(row); } $.ajax({ type: 'post', url: '../new/ajax/ajaxHander.aspx?type=' + type, data: JSON.stringify(j), dataType: 'json', headers: { Accept: "application/json", "Content-Type": "application/json" }, processData: false, cache: false, success: function (reg) { alert(reg); }, error: function () { alert("发生未知错误!"); } }); } </script>
2.2后端接受字符串并处理
private string _response = string.Empty;private string _type = string.Empty;private Test_BUL.sys_Common common = new Test_BUL.sys_Common(); Save_Eva_Para_Info(Str)public void Save_Eva_Para_Info(string Str) { //Eva_Para_Info data = JsonConvert.DeserializeObject<Eva_Para_Info>(Str); List<Eva_Para_Info> data = JsonConvert.DeserializeObject<List<Eva_Para_Info>>(Str); Test_Model.CPCSB MODEL = new Test_Model.CPCSB(); Test_BUL.CPCSB bul = new Test_BUL.CPCSB(); //你可以将下面的内容替换成你的处理代码。。。。。。 foreach(Eva_Para_Info element in data) { MODEL.ID = System.Guid.NewGuid().ToString(); MODEL.EVA_YEAR = element.EVA_YEAR; MODEL.EVA_SEASON = element.EVA_SEASON; MODEL.TCK_CATE = char.Parse(element.ROLE); MODEL.WEIGHT = element.WEIGHT; bul.Add(MODEL); } _response = "测评参数已更新!"; Response.Write(_response); }
2.3后端实体的构建
public class Eva_Para_Info { private int _EVA_YEAR; public int EVA_YEAR { get { return _EVA_YEAR; } set { _EVA_YEAR = value; } } private int _EVA_SEASON; public int EVA_SEASON { get { return _EVA_SEASON; } set { _EVA_SEASON = value; } } private string _ROLE; public string ROLE { get { return _ROLE; } set { _ROLE = value; } } private float _WEIGHT; public float WEIGHT { get { return _WEIGHT; } set { _WEIGHT = value; } } }
3.一些实际的问题和解决方案
3.1首先需要注意的是前端我打注释的 //var row = {}
我一开始是这样写的,但是在实际传送过程中,发现所以的实体都变成了最后一个,原因在于我对js的理解不够深入,插入j的只是row,而并没有与row的内容绑定。
3.2其次注意我在后台处理函数中的注释,如果你要处理一组数据,也就是json实体长这样[{},{},{}],就和我一样处理.但是,如果你要处理的其实只是一个json实体,就要用注释的代码将他转化为一个.net实体。
ps:这里没有交代十分清除,所有笔者再补充一点,就是说如果你只打算传递一个json实体,并不打算传递许多组数据,你其实只需要传递一个{},就可以。
4.一些注意事项
关于.net 前后端数据的交互,还有别的方式,因为笔者并没有亲测所以并没有提交,这里用的是Newtonsoft.Json,所以你需要在添加代码引用 using Newtonsoft.Json;
这是一个引用的.dll文件,我用的是4.0版本的类库,但是我的框架其实是4.5版本的,在这里交代一下,以供读者参考。
阅读全文
1 0
- .net 获取json前端数据
- .net 返回前端json数据
- Asp.net下获取JSON数据代码
- net.sf.json java在json数据中获取元素
- java后台设计简单的json数据接口,设置可跨域访问,前端ajax获取json数据
- ASP.NET 前端AJAX请求数据及后台ashx返回json给前端。
- web前端获取JSON解决方案
- php 前端获取数据
- c# net 获取特定JSON格式数据节点
- C# .NET 后台 json 转 类库 获取数据
- jqGrid 能获取json 数据,前端数据显示不出!(解决)
- 从数据库获取到json数据,前端用vue.js数据绑定
- .net mvc controller查询数据返回给前端json格式数据
- 获取前端post方式传过来的JSON格式的数据的代码
- 前端路上遇到的坑—跨域获取json格式的数据
- android studio app 前端获取json数据以对象的形式来解析展示
- PHP获取JSON数据
- json封装,获取数据
- 计算机网络-传输层
- 【数据结构】筛选法建堆
- day1.3 点线面
- JavaScript中的内置对象
- 地狱飞龙 【simpson 求积分】
- .net 获取json前端数据
- poj2392 Space Elevator
- 解析
- Java 多线程安全之 Atomic
- OpenCV直方图(2)
- 算法设计与分析(14)-- Valid Parentheses(难度:Easy)
- 二、RxJava基础 ---转化操作(Transforming Observables)
- The path to the driver executable must be set by the webdriver.gecko.driver system property
- 操作符*或者->的重载