좋아요, 그래서 여기에 내가있는 곳이 있습니다.개체의 배열을 게시 할 수 없습니다.
.NET WebAPI (C#)에 배열을 보내는 코드가 있습니다.
var questions = [];
$('#questions').find('input').each(function(){
var text = $(this).val();
questions.push({ ID: 123, Question: text });
});
$.ajax({
type: 'POST',
url: _apiPath + '/main/savequestions',
data: { "" : questions }
}).done(function(data){
alert(JSON.stringify(data));
});
그래서 나는 .NET 웹 API는 배열과 혼동 도착하고 속성 이름으로 ""로 데이터를 보내야 할 이유 알려진 버그가 있음을 다시 잠시에 배웠습니다. 우리가 바탕 화면에있는 경우
[Route("main/savequestions")]
[HttpPost]
public List<Question> SaveQuestions(List<Question> questions)
{
using (var mc = new MyContext())
{
List<Question> list = new List<Question>();
if (questions != null)
{
foreach (var item in questions)
{
var dbQ = new Question();
dbQ.ID = Guid.NewGuid();
dbQ.ToolID = item.ID;
dbQ.Question = item.Question;
mc.Questions.Add(dbQ);
list.Add(dbQ);
}
}
mc.SaveChanges();
return list;
}
}
이 잘 작동 :
여기 내 웹 API를 컨트롤러입니다. 모든 것이 절약됩니다 ... 작품 ... 굉장합니다.
우리는 PhoneGap을 사용하고 있으며이 코드를 실행하는 앱을 에뮬레이션하기 위해 phonegap 앱을 사용할 때 어떤 데이터도 저장하지 않습니다. 우리가 보내고있는 JSON이 똑같은지 확인하고 확인했습니다 ...하지만 컨트롤러를 실행할 때 컨트롤러는 빈 배열을 가져 오는 것으로 보이므로 아무 것도 저장하지 않습니다.
불일치로 나를 태우게됩니다.
도움말!
데이비드
트릭을하는 것처럼 보였습니다 ... 와아. 얼마나 무작위인지. 정말 고마워! – David