以下是我的代码。它是asp.net上的MVC项目。无法找出问题所在!创建,更新和检索操作成功运行,但不知道删除操作无效的原因。
代码:
$scope.delete=function(product)
{
var config = { headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8;' } };
$http.delete('/Product/Delete',{params:{id:product.ProductId}},config).then(
function(response){
alert("Deleted");
var index = $scope.Products.indexOf(product);
$scope.Products.splice(index, 1);
}
);
};
控制器代码:
[HttpDelete]
public JsonResult Delete(int id)
{
Product oProduct = new Product();
try
{
oProduct.ErrorMessage = oProduct.Delete(id);
}
catch (Exception ex)
{
oProduct = new Product();
oProduct.ErrorMessage = ex.Message;
}
JavaScriptSerializer serializer = new JavaScriptSerializer();
string sjson = serializer.Serialize(oProduct);
return Json(sjson, JsonRequestBehavior.AllowGet);
}
错误显示: 删除http://localhost:1693/Product/Delete?id=16 404(未找到)
提前致谢。
答案 0 :(得分:0)
你应该调用像/Product
这样的网址而不提及URL中的删除,ASP.Net当你在.delete
上呼叫$http
时,WebAPI会关注调用删除方法
$http.delete('/Product',{params:{id:product.ProductId}},config)