2015-11-19 63 views
-1

即時通訊嘗試發送我從ajax($ .post)到webApi。 Ajax請求運行succesfull但是當我在網上API的形式收集數據發送到方法得到null,則我的方法的返回「假」 請幫我
我的WebAPI方法如何發送序列化的形式到webapi方法

[System.Web.Http.HttpPost] 
    public string AddRecord([FromBody]FormCollection form) 
    { 
     try 
     { 
      PersonBLL personbll = new PersonBLL(); 
      var person = new tbl_persons(); 
      person.firstname = form["txt_namePartial"]; 
      person.lastname = form["txt_lastnamePartial"]; 
      person.age = byte.Parse(form["txt_agePartial"]); 
      var result = personbll.AddRecord(person); 
      return result; 
     } 
     catch (Exception) 
     { 
      return "false"; 
     } 
    } 

我的Ajax功能

function AddRecordWithFormCollection(url, callback) { 

$.post("/api/Person/AddRecord",JSON.stringify(url) , function (data, status) { 
    if (status == "success") { 
     hidePreloader(); 
     unloadDiv("div_operation"); 
     BindTable(); 

     //AddRowTable(data, obj.name, obj.lastname, obj.age); 
     return callback(data); 

    } else { 
     alert("Error in Method [AddRecord]"); 
     hidePreloader(); 

    } 
}); 

}

+0

嘗試刪除[FromBody] –

+1

是您發送哪些數據(即什麼是'url'?)爲什麼您使用的綁定到模型'FormCollection' INSEAD? –

+0

這個問題與'data'有關,你不是從客戶端發送它.. – Moumit

回答

0

我經常使用:

var form = $("#body").find("form").serialize(); 
$.ajax({ 
    type: 'POST' 
    url: "/api/Person/AddRecord", 
    data: form, 
    dataType: 'json', 
    success: function (data) { 
     // Do something 
    }, 
    error: function (data) { 
     // Do something 
    } 
}); 

獲得一個嘗試,因爲我從來沒有使用過對象類型的FormCollection,但只是一個模型類。

+0

我用你提供給我的Ajax,但我改變了FormCollection FormDataCollection – Sign

+0

感謝您的分享;)享受! – Juvilnoz

-1
This should be: 
url=$("#form").serialize(); 
function AddRecordWithFormCollection(url, callback) { 

$.post("/api/Person/AddRecord",url , function (data, status) { 
    if (status == "success") { 
     hidePreloader(); 
     unloadDiv("div_operation"); 
     BindTable(); 

     //AddRowTable(data, obj.name, obj.lastname, obj.age); 
     return callback(data); 

    } else { 
     alert("Error in Method [AddRecord]"); 
     hidePreloader(); 

    } 
}); 

} 
+0

請澄清你的答案 –

相關問題