Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 4 如何使用angularjs调用带有两个参数的web api控制器方法_Asp.net Mvc 4_Angularjs_Asp.net Web Api - Fatal编程技术网

Asp.net mvc 4 如何使用angularjs调用带有两个参数的web api控制器方法

Asp.net mvc 4 如何使用angularjs调用带有两个参数的web api控制器方法,asp.net-mvc-4,angularjs,asp.net-web-api,Asp.net Mvc 4,Angularjs,Asp.net Web Api,我是angularjs的新手,我四处寻找,试图找到一些关于这方面的帖子,有很多,但没有一个能解决我的具体问题(我可以找到) 就这么简单,我想通过angularjs($http POST)发送两个参数,其中第一个参数是类object的json,第二个参数是int。我尝试的是: var url = '../Request/'+ id; $http({ method: 'POST', url: url,

我是angularjs的新手,我四处寻找,试图找到一些关于这方面的帖子,有很多,但没有一个能解决我的具体问题(我可以找到)

就这么简单,我想通过angularjs($http POST)发送两个参数,其中第一个参数是类object的json,第二个参数是int。我尝试的是:

        var url = '../Request/'+ id;
        $http({
            method: 'POST',
            url: url,
            data: Data
        }).success(function (data, status, headers, config) {
            deferred.resolve(data);
        }).error(function (data, status, headers, config) {
            debug.error(data);
            deferred.reject('An error occured while saving the request');
        });
在我的web api控制器中,我有:

    [POST("Request/{id}")]
    public bool SaveRequest(Data data, int id)
    {
       ...
       ...   
    }

当我只发送数据时,它对我有效,但当我尝试添加Id和数据时,两者都无效。请告诉我需要做些什么,谢谢。

您是否尝试过使用
[FromBody]
这样的属性

 [POST("Request/{id}")]
 public bool SaveRequest([FromBody] Data data,[FromUrl] int id)
 {
      ...

有关参数的更多信息

您是否尝试过像这样使用
[FromBody]
属性

 [POST("Request/{id}")]
 public bool SaveRequest([FromBody] Data data,[FromUrl] int id)
 {
      ...
有关参数的详细信息