私はWebApiに問題があり、ここの誰かが私を助けてくれることを望んでいました。
私は次のようなjQueryメソッドを持っています...
function OnInsert(evt) {
var truckId = $("#txtTruckId").val();
var truckReg = $("#txtTruckReg").val();
var description = $("#txtDescription").val();
var condition = $("#txtCondition").val();
var data = '{"obj":{"TruckId":"' + truckId + '","Reg":"' + truckReg +
'","Description":"' + description + '","Condition":"' + condition + '"}}';
var json = JSON.stringify(data)
$.ajax({
url: '/api/Values',
cache: false,
type: 'POST',
data: json,
dataType: 'json',
success: function (results) {
$("#txtTruckId").val('');
$("#txtTruckReg").val('');
$("#txtDescription").val('');
$("#txtCondition").val('');
$.getJSON("api/Values", LoadCustomers);
alert('Truck Added !');
}
})
}
'data'変数がデータを正常にキャプチャすることをデバッグすると。
次に、WebApiコントローラーに関数があります...
// POST api/values
public void Post(TruckInfo obj)
{
WebApiTestEntities db = new WebApiTestEntities();
db.TruckInfoes.Add(obj);
db.SaveChanges();
}
ただし、デバッグすると、すべてのパラメーターにnull値が表示されます。
私はこれを見つけました:
http://kennytordeur.blogspot.co.uk/2012/12/web-api-passing-complex-type-in-json.html
Global.asaxに次のコード行が必要であると述べていますが、それは機能していません。
ValueProviderFactories.Factories.Add(new JsonValueProviderFactory());
私はまた、この種の答えを思い付くのを見つけましたが、私のコードを変更しようとした後、彼らが書いたコードがまだ機能していないように見えます。
jQueryはJSONではなくnullをASP.NETWebAPIに投稿します
誰かが助けることができますか?
前もって感謝します
レックス