$http を使用してサービスから削除する整数の配列を ASP.Net Web API コントローラー メソッドに投稿しようとしています。私は両方を試しました
[HttpDelete]
public HttpResponseMessage DeleteMany(int[] ids) { }
[HttpDelete]
public HttpResponseMessage DeleteMany(DeleteManyDto dto) { }
public class DeleteManyDto
{
public int[] Ids {get;set;}
}
パラメータをnullとして取得し続けます。Angular サービスでいくつかのバリエーションを試しました。ここに例があります
this.deleteMany = function(ids) {
// ids is an int array. e.g. [1,4,6]
return $http.delete('api/Foo/DeleteMany', { toDelete: ids }).then(function(result) {
return result.status;
});
};
私が何を見逃しているか知っている人はいますか?
更新: スペルミス。HTTP リクエストからのデバッグが含まれています。
Request URL:http://localhost:54827/api/Foo/DeleteMany
Request Method:DELETE
Status Code:500 Internal Server Error
Request Headersview source
Accept:application/json, text/plain, */*
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Cache-Control:no-cache
Connection:keep-alive
Cookie:__RequestVerificationToken=blabla
Host:localhost:54827
Origin:http://localhost:54827
Pragma:no-cache
Referer:http://localhost:54827/
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36
Response Headersview source
上記のコードは、リクエスト ペイロードを生成していません。更新を行うと、リクエストのペイロードが表示されます。例
Request Payloadview parsed
{"id":4,"name":"zzzz", "bar": 2}
それだけの価値があるため、私はAngular 1.2.rc3を使用しています