首页 > 解决方案 > 反序列化json数组以获取值以过滤asp.net mvc中的jqgrid数据

问题描述

我收到此错误:Newtonsoft.Json.dll 中发生“Newtonsoft.Json.JsonSerializationException”类型的异常,但未在用户代码中处理附加信息:无法将当前 JSON 数组(例如 [1,2,3])反序列化为键入 'KETABMA_MVC.Models.SearchFilter' 因为该类型需要 JSON 对象(例如 {"name":"value"})才能正确反序列化。

从下面的行:

  Newtonsoft.Json.JsonConvert.DeserializeObject<SearchFilter>(filters);

我有一个像这样的 JsonArray 数据:

[{"YEAR_ABBR":"1398_1398"},{"YEAR_ABBR":"1397_1397"},{"VAHED_ID":"909"}]

它来自以下方法:

        <script>
          $(document).ready(function () {
              $("#btnSubmit").click(function () {
                $("#loaderDiv").show();
                var myformdata =JSON.stringify($("#myForm").serializeArray());
               alert(myformdata);
                $.ajax({
                    type: 'POST',
                    datatype: 'JSON', 
                    data: { filters: myformdata , _search: true },
                    url: '@Url.Action("Get_Contracts_Steps", "Home")',

                    success: function () {
                        $("#loaderDiv").hide();
                        $("#myModal").modal("hide");
                                            }
                })
            })
        })

    </script>

我想将它作为多重过滤器发送到 jqgrid manageMultiFieldSearch 方法

标签: javascriptjqueryjsonasp.net-mvcjqgrid

解决方案


推荐阅读