【发布时间】:2016-12-13 06:29:40
【问题描述】:
我正在使用以下调用向c# web api controller 发送数据。
$.ajax({
type: "POST",
url: "menuApi/menu/Cost",
data: JSON.stringify(order),
contentType: "application/json",
success: function (data) { window.alert('done')},
dataType: 'json'
});
服务器端的c# controller是这样的:
public string Cost([FromBody] string order)
{
var sOrder = Newtonsoft.Json.JsonConvert.DeserializeObject<dynamic>(order);
return "";
}
Javascript 中的订单对象是一个具有嵌套数组和属性的复杂对象。我将数据设为空。我不确定如何通过 ajax 调用发送订单。
编辑:这是我的订单对象
var order = {
name:"",
id:"",
cost:"",
details: {
sItem:[{name:"",cost:""}],
dItem:[{name:"",cost:"", components:[{name:"",quantity:""}]}]
}
}
【问题讨论】:
-
请显示
order的定义 -
尝试使用:
application/json; charset=utf-8 -
尝试使用对象而不是字符串作为操作的参数。 MVC 的映射功能应该发挥作用
-
它不是一个 mvc 应用程序。我刚刚在简单的 asp.net 项目中添加了 web api
-
@MichalHainc 尝试过,但没有任何改变。
标签: javascript c# jquery ajax