javascript - 将 List<int> 从 Javascript 传递到 ASP.Net 页面中启用 AJAX 的 WCF

标签 javascript asp.net-mvc wcf

我正在从 ASP.Net 页面调用 WCF 方法,但当 WCF 尝试反序列化从 JavaScript 接收的 recordIds 参数时,出现格式异常。

传递给WCF方法的第一个参数需要是List类型。我在使用 JSON.stringify 时做错了什么吗?

调用WCF的Javascript代码

       function Update() {
        var myarray1 = new Array();
        myarray1[0] = 1;
        myarray1[1] = 11;
        myarray1[2] = 14;
        WCFService1.AJAXEnabledService.BatchUpdateRecords(
          JSON.stringify({recordIDs: myarray1}) , "ddsd", "gggg", 
          updateGrid, OnError);
    }

上面的 JavaScript 调用 WCF 方法

   [OperationContract]
    public bool BatchUpdateRecords(List<int> recordIds, string columnNameToUpdate, string columnValue)
    {

        DataTable tierIDsTable = new DataTable("RecordIds");
        tierIDsTable.Columns.Add(new DataColumn("Integer", typeof(Int32)));
        tierIDsTable.PrimaryKey = new DataColumn[] { tierIDsTable.Columns["TierId"] };

        foreach (int recordId in recordIds)
        {
            tierIDsTable.Rows.Add(recordId);
        }
        return true;
    }

最佳答案

不是100%确定,但是你尝试过吗?

WCFService1.AJAXEnabledService.BatchUpdateRecords(
    myarray1,
    "ddsd",
    "gggg",
    updateGrid, OnError);

关于javascript - 将 List<int> 从 Javascript 传递到 ASP.Net 页面中启用 AJAX 的 WCF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15424058/

相关文章:

.net - 使用最小起订量模拟 ChannelFactory 时出现 TargetInitationException

c# - 尝试序列化参数 http ://tempuri. org/:callback 时出错

javascript - ng-show/hide - 基于字符串中的子字符串

javascript - 纯 HTML5 音频播放器 : duration and start

c# - MVC5中如何设置默认路由

wcf - 在 WCF 项目中启动 NHibernate 的简单方法

javascript - 如何从数组中获取随机元素

javascript - 将 HTML 负载解析为 JSON

c# - 生成的 Entity Framework 代码

c# - Asp.Net Core MVC 中的自定义相对路径