1
           $.ajax({
                url: '/Project/GetItemsBySearchKey',
                type: 'POST',
                dataType: "json",
                data: {
                    searchKey: "text",
                    exclussionList: [10,11]
                },
                success: function (data) {
                   alert(data);
                }
            });

これはjavascriptであり、C#MVCコントローラーの関数の下にあります

public ActionResult GetItemsBySearchKey(string searchKey, List<long> exclussionList)

searchKey の値はコントローラで取得されますが、exclussionList は常に null になります コードのエラーは何ですか

4

2 に答える 2

1

.ajax の "traditional" プロパティを true に設定して浅い配列のシリアル化を行い、mvc の既定のモデル バインダーが残りを行います。

$.ajax({
                url: '/Project/GetItemsBySearchKey',
                type: 'POST',
                dataType: "json",
                traditional: true,
                data: {
                    searchKey: "text",
                    exclussionList: [10,11]
                },
                success: function (data) {
                   alert(data);
                }
            });

aciton は次のようになります。

public ActionResult GetItemsBySearchKey(string searchKey, List<int> exclussionList)
于 2013-11-01T08:12:12.183 に答える
1

string代わりにとして渡しarray、コントローラーで分割してみてください

exclussionList: [10,11].join("-")
于 2013-11-01T06:15:45.497 に答える