JQuery DataTable Предупреждение 4 (используя asp.net MVC 5) - PullRequest
0 голосов
/ 22 октября 2019

Честно говоря, я новичок в этом jquery DataTable и мягко с js / json вещами

В настоящее время я переделываю свои старые заброшенные веб-проекты и пытаюсь переделать его в MVC с помощью таблиц данных. Так как я вернулся к этому программированию через 6 месяцев (немного предыстории для вас, поэтому, пожалуйста, имейте в виду, если я снова попрошу получить более подробную информацию об ответе)

проблема в том, что я сталкиваюсь сошибка для кода предупреждения 4 при получении данных от контроллера при обработке на стороне сервера jQuery dataTable

Ниже приведен код моего контроллера

    [HttpPost]
    public ActionResult GetRoles()
    {
        var gridControl = new GridviewControl();
        var objSrc = new BOPMRoles();

        try
        {
            gridControl = Common.Common.GenerateTableInformation(Request);
            objSrc = Common.Common.GenerateSearch(typeof(BOPMRoles), Request) as BOPMRoles;

            BPPMRoles objBP = new BPPMRoles();

            var data = objBP.Get(objSrc, gridControl);

            var objres = data.Keys.Single();
            var roles = data.Values.ToList();

            if (objres.MsgCode != 0)
            {
                return Json(new { draw = gridControl.Draw, recordsFiltered = 0, totalRecords = gridControl.TotalRow, data = new List<BOPMRoles>(), error = "Error, Error Code = " + objres.MsgCode }, JsonRequestBehavior.AllowGet);
            }


            return Json( new { draw = gridControl.Draw, recordsFiltered = gridControl.TotalRow, totalRecords = gridControl.TotalRow, data = roles }, JsonRequestBehavior.AllowGet);
        }
        catch (Exception err)
        {
            return Json(new { draw = gridControl.Draw, recordsFiltered = 0, totalRecords = gridControl.TotalRow, data = new List<BOPMRoles>(), error = "Error, Error Code = " + 80  }, JsonRequestBehavior.AllowGet);
        }
    }

сам метод возвращает значения ролей с одной строкой без каких-либоerror или fetching catch errors

и ниже - мой код с данными JQuery, который является основной темой моего вопроса

    $('#table').dataTable({
        "processing": false,
        "serverSide": true,
        "filter": false,
        "orderMulti": false,
        "dataSrc": "",
        "dom": '<"top"i>rt<"bottom"lp><"clear">',
        "pageLength": 10,
        "ajax": {
            "url": "@Url.Action("GetRoles", "Roles", new { area = "PersonalManagement" })",
            "type": "POST",
            "searchable": true,
            "error": function (xhr, ajaxOptions, thrownError) {
                alert(thrownError);
            }
        },
        "columns": [
            { "data": "[].RoleName", "name": "RoleName", "autoWidth": true },
            { "data": "[].CreatedBy", "name": "CreatedBy", "autoWidth": true },
            { "data": "[].CreatedTime", "name": "CreatedTime", "autoWidth": true },
            { "data": "[].ModifiedBy", "name": "ModifiedBy", "autoWidth": true },
            { "data": "[].ModifiedTime", "name": "ModifiedTime", "autoWidth": true }

        ]
    });

Дело в том, что с этими кодами все работает нормально, ноквадратные скобки в

"data": "[].DomainMemberFieldName"

вроде как неправильно меня теряют, есть ли что-то, чего мне не хватает в моем коде?

также, пожалуйста, объясните мне, почему я должен поставить квадратные скобкирешить мою проблему и как я могу получить тот же результат без квадратных скобок

Так как, когда я уберу квадратные скобки, предупреждение 4 будетсработать

Заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...