我正在调用web api方法。
API方法:
//get
public bool GetShoppingElementDetails(ElementSearchParameter elementSearchParameter)
{
}
class ElementSearchParameter{
public string name;
public list<int> ids;
}
实际上该方法是一个get方法,那么如何将multidimention数组参数传递给该函数,
我想,jquery框架使用“traditional = true”将整个对象转换为正确的查询字符串,以便mvc控制器完美地解析它。
在c#中我想做同样的事情。 如下所示,
ElementSearchParameter toSearch = new ElementSearchParameter{};
//convert the tosearch object into string object (parsing like jquery)
string toSearchString = ...
HttpResponseMessage response = httpManager.Client.GetAsync(string.Format(_routePrefixMeta + "/OrderOffering/Elements/search/{1}", programID, toSearchString)).Result;
return httpManager.ConstructData<List<OfferElementType>>(response);
答案 0 :(得分:0)
我想你想知道如何在查询字符串上传递多个id并将它们解析为IEnumerable?
我认为唯一的方法是使用自定义的ModelBinder。您可以找到类似How to pass an array of integers to ASP.NET Web API?
的示例然后 - 如上面的链接所述 - 您可以说:/ Categories?categoryids = 1,2,3,4,ASP.NET Web API将正确绑定您的categoryIds数组。