如何将JSON从AngularJS发布到C#控制器

时间:2017-10-03 19:58:38

标签: javascript c# angularjs json

我试图将一个简单的JSON发布到C#Controller,但我得到了null。我是AngularJS的新手。

这是发布

的angularjs代码
 song_title   |   artist       | play_count
------------- | -------------- | ----------
This Song     | This Artist    | 1
That Song     | That Artist    | 3
Another Song  | Another Artist | 4

这是C#代码,但字符串数据始终为空

k = "{ 'id': 1,'name': 'A green door','price': 12.50}";

$http.post("/Inventory/PostSO", k)
    .then(function (response) {
        $scope.message = response.status;
    },
    function (error, status) {
        $scope.message = error.error;
    });

我做错了什么?感谢

2 个答案:

答案 0 :(得分:1)

首先设置请求标头。

  

Content-Type - application / json

在第二个控制器动作参数是字符串时,它必须是模型,因为动作描述符试图将发送的模型映射到C#对象,创建一个简单的类,并在json示例中定义所有属性,如数据。

再试一次:))

答案 1 :(得分:1)

将FromBody-Attribute添加到Action-Parameter:

public ContentResult PostSO([FromBody]string data)
{
    return null;
}