我可以将列表作为web api方法中的参数传递吗?

时间:2016-11-08 07:19:19

标签: asp.net-web-api

public static Document GetDocument(List<long> IdList)
{
          //my code
}

我将UI中的参数传递为: -

 getMulipleDocument: function (documentId) {
            return $http({
                url: apiUrl + "Info/GetDocument?IdList=" + documentId,});
  

错误: - 参数在web api方法中为null。我可以在Web api方法中将列表作为参数传递吗?

1 个答案:

答案 0 :(得分:1)

在代码中进行一些修改。使用FromUri构建列表

public static Document GetDocument([FromUri]List<long> IdList)
{
          //my code
}

像这样建立网址

var requestUrl = apiUrl + "Info/GetDocument?IdList=" + id1 + "&IdList=" + id2; 

构建requestUrl之类的查询字符串,以?IdList=的第一个ID开头,然后使用&IdList=

将下一个ID附加到网址

在上述情况下,您只能使用?IdList=传递一个ID,然后使用您的ID