【发布时间】:2015-12-31 02:13:57
【问题描述】:
我正在用 asp.net 构建一个 rest API 我的问题是当我尝试像这样将一个学生添加到我的数据库中时:
我得到“值变量为空”, 这是我添加学生的代码:
// Get All Students
[Route("api/Students")]
public IEnumerable<Student> Get()
{
return _StudentService.Queryable().ToList();
}
// Insert Student
[Route("api/Students/")]
public IEnumerable<Student> Post(Student value)
{
cc.Students.Add(value);
cc.SaveChanges();
return Get();
}
我使用“Fiddler web Debugger”来测试我的网址,它只能以这种方式工作:
现在如果我有一个 angularJS 客户端尝试将新学生添加到数据库中,我如何在 URL 中以 json 格式发送数据
这就是我从客户端 angularJS 添加新学生的方式:
$http({method: 'POST', url: 'http://localhost:50001/api/Students?&FirstName=cc&LastName=cc&Email=student10@gmail.com&DropOut=false&Live=false&ClassId=1&ImageId=1})
.success(function (data) {
console.log("success");
}).error(function (data, status, headers, config) {
console.log("data error ...");
});
非常感谢您的帮助
【问题讨论】:
-
如果需要发送JSON格式的数据,为什么不使用POST呢?否则,您可以使用 JSON.stringify()。
-
ok @jason9187 谢谢我会测试 JSON.stringify() 因为我已经在我的 angularJS 客户端中使用了 POST
-
但是如果你对内容进行字符串化,那么你只需要在后端解析它。我建议你坚持使用 POST。
-
好的,杰森,非常感谢 :)