我正在尝试使用Angular 1.x发送按钮点击数据。
以下是来自客户端的调试,对象似乎设置正确:
以下是服务器端的调试,值丢失:
和我的POCO:
[Serializable]
public class Item
{
public int Id { get; set; }
public string Key { get; set; }
public int Value { get; set; }
public string Description { get; set; }
}
更新
这有效,但相当难看......
我是否可以摆脱转化并使用Item
类型作为参数,而不是JObject
?
答案 0 :(得分:0)
您希望使用JSON.stringfy()将JavScript值转换为JSON字符串。
$httpost.post("...", JSON.stringify($scope.newItem))
答案 1 :(得分:0)
使用[FromBody]
:
public Add([FromBody] Item item) { ... }
对于复杂类型,Web API尝试使用媒体类型格式化程序从邮件正文中读取值。这包括[FromBody],[FromUri]和[ModelBinder],或自定义属性。
答案 2 :(得分:0)
在班级声明中添加访问修饰符public
。
public class Item
{
public int Id { get; set; }
public string Description { get; set; }
public int Key { get; set; }
public string Value { get; set; }
}