Передача списка int в веб-API из клиента RestSharp

Когда я использую приведенный ниже код из REST Sharp, я не могу передать listOfSelectedTicketsIds, он всегда равен нулю.

Запрос клиента Rest Sharp .net

 var _stDeveloperApi = new RestClient("http://127.0.0.1/");
            var url = string.Format("api/v1/SignalR/MultiClickMode");
            var listOfSelectedTicketsIds = new List<int> { 2, 3 };
            var request = new RestRequest(url, Method.GET);
            request.AddParameter("listOfSelectedTicketsIds", listOfSelectedTicketsIds, ParameterType.GetOrPost);
            var response = _stDeveloperApi.Execute(request);

Метод веб-API

[HttpGet]
        public HttpResponseMessage MultiClickMode(List<int> listOfSelectedTicketsIds)
        { 
            var response = new HttpResponseMessage();

            try
            {

            }
            catch (Exception ex)
            {
                response = Request.CreateResponse(HttpStatusCode.InternalServerError);
            }

            return response;
        }

person SOF User    schedule 21.01.2014    source источник


Ответы (1)


Измените свой клиентский код следующим образом.

var _stDeveloperApi = new RestClient("http://127.0.0.1/");
var url = string.Format("api/v1/SignalR/MultiClickMode");
var listOfSelectedTicketsIds = new List<int> { 2, 3 };
var request = new RestRequest(url, Method.GET);
listOfSelectedTicketsIds.ForEach(t => 
            request.AddParameter(
                "listOfSelectedTicketsIds", t, ParameterType.GetOrPost));
var response = _stDeveloperApi.Execute(request);

Измените сигнатуру метода действия веб-API следующим образом.

public HttpResponseMessage MultiClickMode(
                               [FromUri]List<int> listOfSelectedTicketsIds)
person Badri    schedule 22.01.2014