【问题标题】:How to send a list of class from client into webmethod with ajax如何使用ajax将类列表从客户端发送到webmethod
【发布时间】:2016-03-02 12:46:22
【问题描述】:

我有一个使用打字稿在客户端制作的类列表,现在我想将它发送到 webmethod。 我的打字稿代码如下:

  class MakeReportData {
    LocalName: string;
    FldSi: number;
    ViewSi:number;
    TypeName:string ;
    CheckBoxshow :boolean   ;
    CheckBoxFilter:boolean;
}

我的 Ajax 代码如下:

  var temp: MakeReportData[] = [];
        for (var i = 0; i < $scope.myData.ReportDetail.length; i++) {
            var rep: MakeReportData=new MakeReportData();
            rep.LocalName = $scope.myData.ReportDetail[i].LocalName;
            rep.FldSi = $scope.myData.ReportDetail[i].FldSi;
            rep.ViewSi = $scope.myData.ReportDetail[i].ViewSi;
            rep.TypeName = $scope.myData.ReportDetail[i].TypeName;
            rep.CheckBoxshow = $scope.myData.ReportDetail[i].CheckBoxshow;
            rep.CheckBoxFilter = $scope.myData.ReportDetail[i].CheckBoxFilter;
            temp.push(rep);
        }
        var tedata = JSON.stringify({ itm: temp });
        alert(tedata);
        $.ajax({
            type: "POST",
            url: "MakeReport.aspx/GetList",
            contentType: "application/json; charset=utf-8",
            data: tedata , 
            dataType: "json",
            success: function (data) {
                alert(data.d);
            },
            error: function (data, status, jqXHR) {
                alert(status);
                alert(jqXHR);
            }
        });

我的网络方法如下:

 [WebMethod]
    public static string GetList(MakeReportData[] itm)
    {
        return "";
    }

我的 C# 类是这样的:

 public class MakeReportData
{
    public string LocalName { get; set; }
    public int FldSi { get; set; }
    public int ViewSi { get; set; }
    public string TypeName { get; set; }
    public bool CheckBoxshow     { get; set; }
    public bool CheckBoxFilter { get; set; }

}

我想将 MakeReportData 列表发送到服务器 webmethod。 我的问题是webmethod没有调用。

【问题讨论】:

    标签: asp.net ajax typescript asp.net-ajax webmethod


    【解决方案1】:

    我自己做的,只需要将 webmethod 的输入做成如下列表:

     public static string GetList(List<MakeReportData> itm)
        {
            return "";
        }
    

    【讨论】:

      猜你喜欢
      • 2020-02-28
      • 1970-01-01
      • 2012-12-15
      • 2015-10-07
      • 1970-01-01
      • 2019-04-17
      • 2016-11-11
      • 1970-01-01
      • 2015-03-26
      相关资源
      最近更新 更多