アラートに正しく表示され、ブラウザー デバッガーの投稿セクションに正しく表示される文字列化された JSON オブジェクトがありますが、コントローラーでは null として表示されます。どのように情報が失われているのかわかりません。
JSコードは次のとおりです。
var assessmentStatus = [];
$("select.assessmentSelect").each(function () {
assessmentStatus.push({
assessmentname: $(this).attr("id"),
assessmentstatus: $(this).val()
});
});
alert(JSON.stringify(assessmentStatus));
$.ajax({
url: '@Url.Action("testAS")',
type: "POST",
contentType: 'application/json',
data: JSON.stringify({
AS: assessmentStatus,
AS2: assessmentStatus
})
});
これはアラートに表示されているものです:
[{"assessmentname":"testassessment","assessmentstatus":"Design"},{"assessmentname":"DepressionUpload","assessmentstatus":"Design"}]
これは投稿に表示されているものです:
[Object { assessmentname="testassessment", assessmentstatus="Design"}, Object { assessmentname="DepressionUpload", assessmentstatus="Design"}]
私のコントローラーは次のようになります。
public ActionResult testAS (string[] AS, string AS2)
string[] AS returns [0]null [1]null
string AS2 just returns null.
コントローラーに送信されるときに文字列化されないのはなぜですか?