przekazać tablicę obiektu do webapi
Mam projekt webapi .net mvc 4, który próbuję przekazać tablicę obiektu do metody na moim kontrolerze.
Znalazłem tutaj kilka przykładów na temat SO, które mówią o konieczności ustawienia właściwości mojego obiektu za pomocą: param1 = cokolwiek i param2 = bling i param3 = blah.
Ale nie widzę, w jaki sposób mogę przekazać kolekcję za pomocą tego.
Oto mój podpis metody. Zauważ, że udekorowałem argument atrybutem [FromUri].
public List<PhoneResult> GetPhoneNumbersByNumbers([FromUri] PhoneRequest[] id)
{
List<PhoneResult> prs = new List<PhoneResult>();
foreach (PhoneRequest pr in id)
{
prs.Add(PhoneNumberBL.GetSinglePhoneResult(pr.PhoneNumber, pr.RfiDate, pr.FinDate, pr.State));
}
return prs;
}
oto mój prosty obiekt PhoneRequest:
public class PhoneRequest
{
public string PhoneNumber { get; set; }
public string RfiDate { get; set; }
public string FinDate { get; set; }
public string State { get; set; }
}
a oto przykład tego, co używam do przekazania:
http://localhost:3610/api/phonenumber/getphonenumbersbynumbers/
[{"PhoneNumber":"8016667777","RfiDate":"","FinDate":"2012-02-11","State":"UT"},
{"PhoneNumber":"8018889999","RfiDate":"2012-12-01","FinDate":"","State":"UT"}]
używając tego wraca ze „złym żądaniem”
Próbowałem też tego
http://localhost:3610/api/phonenumber/getphonenumbersbynumbers?
id=[{"PhoneNumber":"8016667777","RfiDate":"","FinDate":"2012-02-11","State":"UT"},
{"PhoneNumber":"8018889999","RfiDate":"2012-12-01","FinDate":"","State":"UT"}]
który osiąga metodę, ale tablica ma wartość NULL.
jak mogę przekazać tablicę obiektu My PhoneRequest do mojej metody API Web?