我想通過一個json數組和http post的值。該值已通過,但數組沒有。 javascript控制器中的respondList的值是:「[{」correct「:」false「,」answer「:」a1「},{」correct「:true,」answer「:」a2「}]」角度 - 傳遞數組與http post
JavaScript的控制器
function setMultiQuestion(question, responses)
{
var jsonData = angular.toJson(responses);
var responsesList = {'object':jsonData};;
$http.post(baseUrl + "Admin/insertMultiAnswers", { question: question, responsesList: responsesList })
.success(function (data, status, headers, config) {
})
.error(function (data, status, header, config) {
});
}
MVC控制器
[HttpPost]
public ActionResult insertMultiAnswers(MultiChoiceQuestionModel model)
{
try
{
model.setMultiAnswer();
Response.StatusCode = 200;
return Content("Sucess");
}
catch (Exception ex)
{
Response.StatusCode = 500;
return Content("Fail");
}
}
MODEL
public class answerObj
{
public bool correct { get; set; }
public string answer { get; set; }
}
public class MultiChoiceQuestionModel
{
public string question { get; set; }
public List<answerObj> responsesList = new List<answerObj>();
public void setMultiAnswer()
{
using (ATLASEntities atlasEntity = new ATLASEntities())
{
Console.Write(responsesList.Count);
}
}
你爲什麼這樣做? 'var responsesList = {'object':jsonData} ;;'? –
你在js中引用的方法'insertMultiAnswers'在哪裏? –
你可以做兩件事之一......將它保存爲json對象,並將FromBody屬性添加到端點或使用json.stringify()將其轉換爲json字符串,並將其作爲可以字符串然後將其序列化回一個對象。我更喜歡第一種方法。 – jbrown