asp.net MVC接收前端传递的复杂json对象的简单处理方法

来源:互联网 发布:linux打开根目录 编辑:程序博客网 时间:2024/05/29 14:12

有时候,我们需要从页面传递一组数据到后台,但同时又需要传递几个独立的参数,这种情况很伤脑筋。

网上有各种各样的说法和办法,但都不好用,或没有说到关键的地方。

还有的建议传字符串后台格式化或解析,也有专门写一个切面程序修改mvc自带的格式化方法的,等等,都不是想要的东东。

我需要的是一个简简单单,不做任何改动就能实现的方法。

今天遇到这个问题,反复调试了好多次,终于找到了最简单的方法,什么都不用改,直接传递,直接接收大笑

现在记录下来,给大家参考参考:

一. 前端js提交方法:

    function submit(group, quarter) {//这里只是个例子,不要关注业务,只看提交的数据格式就好        var list = $('#tttt').find('.on'),            dt = { 'Quarter': quarter, 'Group': group, 'Streses': [] };        for (var i = 0; i < list.length; i++) {            var t = $(list[i]),                v = parseInt(t.attr('idx') || 0, 10),                p = t.parent().parent(),                title = p.children().first().html();            dt.Streses.push({ 'Name': title, 'Level': v });        }        myAjax('/Stress/save', dt, null, function (re) {            if (re.Code == 'Success') {                location.href = 'yyyyy';            }        });    }

二.后台action接收方法:

        [HttpPost]        public ActionResult Save(StressModel stress)        {            //do something...            return View(ReMsg);        }


三.接收参数对象定义:

    public class Stress    {        public string Name { get; set; }        public int Level { get; set; }    }    public class StressModel    {        public int Quarter { get; set; }        public string Group { get; set; }        public List<Stress> Streses { get; set; }    }

看看实际运行的结果:


这里需要特别注意的一点就是,.接收对象本身字段可以跟json不完全对应,这点大家都知道,但里面的列表对象,却必须完全对应!

我就是卡在这里,导致各种不理解,各种不成功。。。

阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 我妻子 妻子情人 年轻妻子 妻子朋友 偷朋友妻子 妻子英语 歌曲妻子 妻子歌词 妻子的英语 好妻子 妻子的英文 妻子的 妻子的拼音 妻子被 妻子妻子 妻子要离婚 妻子性冷淡 替身小妻子 妻子出轨后 我的小妻子 林丹妻子 沈从文妻子 妻子的屁眼 南怀瑾妻子 妻子的出轨 妻子被别人 杨利伟妻子 爹爹的妻子 总裁小妻子 妻子的日记 暴露妻子 妻子的转变 妻子的悲哀 完美妻子 赵云妻子 行长妻子 陈忠和妻子 干朋友妻子 妻子复仇记 李宗盛妻子 妻子英文