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的代碼可能需要根據你設計的數據格式進行更改

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章