0

私は次のスクリプトを持っています:

obj = [];
            obj = [{ AllocationStatus: false,
                BRId: 2,
                BRName: "rifat",
                SupervisorId: 19,
                SupervisorName: "Ashraful"
            }];
            console.log(obj);
            var data2send = JSON.stringify(obj);
            $.ajax({
                type: "POST",
                url: "../WebService1.asmx/allocatebr",
                data: "{'brlist':'" + data2send + "'}",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (msg) {
                    alert(msg.d);
                },
                error: function () {
                    alert('error f');
                }
            });

Web サービスには、次のコードがあります。

[WebMethod]
    public string allocatebr(List<Allocation> brlist)
    {
        //foreach(Allocation br in brlist){

        //}

        return "success";

    }

public class Allocation
    {
        public int SupervisorId { get; set; }
        public string SupervisorName { get; set; }
        public int BRId { get; set; }
        public string BRName { get; set; }
        public bool AllocationStatus { get; set; }
    }

しかし、次のエラーが表示されます: リソースの読み込みに失敗しました: サーバーが 500 のステータスで応答しました (内部サーバー エラー)。大変感謝しています。nbi は obj 配列を取得しました

`$('.chkgrip').each(function () {
                    if ($(this).is(':checked')) {
                        var x = $(this).closest('tr').data('row');
                        obj.push(x);
                    }
            });`
4

2 に答える 2

0

以下は私にとってはうまくいきます:

using Newtonsoft.Json;

 [WebMethod]
    public static string allocatebr(string brlist)
    {

        List<Allocationbr> brs = JsonConvert.DeserializeObject<List<Allocationbr>>(brlist);
        foreach (Allocationbr b in brs)
        {
            x......
        }
        return x.ToString();
    }
于 2013-10-16T18:02:49.153 に答える