Publicar una matriz de cadenas en el método de API web

Esta es mi llamada ajax del lado del cliente:

    var list = ["a", "b", "c", "d"];

    var jsonText = { data: list };

    $.ajax({
        type: "POST",
        url: "/api/scheduledItemPriceStatus/updateStatusToDelete",
        data: jsonText,
        dataType: "json",
        traditional: true,
        success: function() { alert("it worked!"); },
        failure: function() { alert("not working..."); }
    });

Este es el encabezado de la red de Chrome:

Request URL:http://localhost:2538/api/scheduledItemPriceStatus/updateStatusToDelete

Request Method:POST

Request Headersview source

Accept:application/json, text/javascript, */*; q=0.01

Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3

Accept-Encoding:gzip,deflate,sdch

Accept-Language:en-US,en;q=0.8

Connection:keep-alive

Content-Length:27

Content-Type:application/x-www-form-urlencoded; charset=UTF-8

Host:localhost:2538

Origin:http://localhost:2538

Referer:http://localhost:2538/Pricing/ScheduledItemPrices

User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11

X-Requested-With:XMLHttpRequest

Formulario URL de vista de datos codificado

data:a
data:b
data:c
data:d

Este es mi método de controlador webapi:

public HttpResponseMessage UpdateStatusToDelete(string[] data)

resultado:

cuando depuro, el parámetro de datos en UpdateStatusToDelete devuelve{string[0]} en lugar de datos: a datos: b datos: c datos: d

¿Qué estoy haciendo mal? Cualquier ayuda es muy apreciada.

Respuestas a la pregunta(6)

Su respuesta a la pregunta