mvc web api 保存多个实体类的方法

先说一下我的业务需求,挺简单的。

就是在设计角色和权限的页面中,需要一个角色对应多条权限记录,那么在保存的时候,我的处理方式是,先删除该角色的所有权限,然后再保存所有的权限。

这样的话问题就来了,用默认的方式好像不满足我的需求,因为我需要一次传递多条权限记录给后台,网上搜索后,终于找到了方法,代码如下:

    public bool Add([FromBody]JObject Entity)

        {

            dynamic jObj = Entity;

            var list = jObj.Value;

            List<authorization> result = new List<authorization>();

            for (int i = 0; i < list.Count; i++)

            {

                authorization e = (list[i] as JObject).ToObject<authorization>();

                e.ID = Helper.GetGUID();

                result.Add(e);

            }



            return DB.SaveLimits(result) ;

        }

前台调用的方法和以前一样,只是传递参数时需要重新设计一下数据格式:

var data = {Value:[{实体类json格式},{实体类json格式},{实体类json格式}]};

        $.ajax({

                url: '/api/Authorization/',

                type: 'POST',

                data: JSON.stringify(data),

                contentType: 'application/json; charset=utf-8',

                success: function (data) {

                    $.messager.alert('提示信息', '数据保存成功...', 'info');

                },

                error: function () {

                    $.messager.alert('提示信息', '数据保存失败...', 'error');

                }

            });

ps:后台cs的代码可能需要根据你设计的数据格式进行更改

 

你可能感兴趣的:(Web)