私がやろうとしているのは、JSONオブジェクトをWebAPI ajax呼び出しに渡し、サーバー側で強く型付けされたオブジェクトにマップすることです。文字列値は完全に投稿されていますが、ブール値に関しては、まったく渡されていません。以下は私のコードです:
var gsGasolineField = $('.gsGasoline').val();
blData = { Gasoline: gsGasolineField };
var json = JSON.stringify(blData);
$.ajax({
type: "POST",
url: url,
data: json,
contentType: "application/json",
dataType: "json",
statusCode: {
201 /*Created"*/: function (data) {
$("#BusinessLayerDialog").dialog("close");
ClearForm("#BusinessLayerForm");
},
400: /*Bad request - validation error*/ function (data) {
$("#BusinessLayerForm").validate().form();
},
500: function (data) {
alert('err');
}
},
beforeSend: setHeader
});
ガソリンプロパティは、サーバー側でブール型です。
編集:
上記のように、ガソリンはブール値であり、MVCである私のHTMLマークアップは次のとおりです
<div style="float: left">@Html.CheckBoxFor(x => x.GasStation.Gasoline, new { @class = "gsGasoline" })</div>
したがって、このチェックボックスの値を取得して、JSONオブジェクトに渡します。
編集
また、それを直接送信しようとしました
blData = { Gasoline: true };
まだ偽のサーバー側!