2014-10-09 1 views
1

Проблема значение brandSelection не проходит в контроллер Web API >>>не может передать массив из angularjs сервиса Web API

вот мой $http.get() звонок от Angular службы:

var _getItemByCategoryId = function (categoryId, currentPageNum, brandSelection) { 

     var deferred = $q.defer(); 

     $http.get("Item/GetItemByCategoryId/categoryId/" + categoryId + "/currentPageNum/" + currentPageNum, { params: brandSelection }).success(deferred.resolve).error(deferred.reject); 

     return deferred.promise; 

}; 

Вот код WebAPI:

[HttpGet] 
    [Route("Item/GetItemByCategoryId/categoryId/{categoryId}/currentPageNum/{currentPageNum}")] 
    public IHttpActionResult GetItemByCategoryId(string categoryId, int currentPageNum, string[] brandSelection) 
    { 
     var item = _itemService.GetItemByCategoryId(categoryId, currentPageNum); 
     return Ok(item); 
    } 

проблема заключается в том, что я получаю значение categoryId и currentPageNum в этом Web API Contr oller, но значение brandSelection всегда равно нулю.

ответ

1

[Formuri].

[HttpGet] 
[Route("Item/GetItemByCategoryId/categoryId/{categoryId}/currentPageNum/{currentPageNum}")] 
public IHttpActionResult GetItemByCategoryId(string categoryId, int currentPageNum, [FromUri] string[] brandSelection) 
{ 
    var item = _itemService.GetItemByCategoryId(categoryId, currentPageNum); 
    return Ok(item); 
}