Retornar JsonResult da API da Web sem suas propriedades

Eu tenho um controlador de API da Web e, a partir daí, estou retornando um objeto como JSON de uma ação.

Estou fazendo assim:

public ActionResult GetAllNotificationSettings()
{
    var result = new List<ListItems>();
    // Filling the list with data here...

    // Then I return the list
    return new JsonResult { Data = result };
}

Mas, dessa maneira, o objeto JsonResult, incluindo seuData O atributo é serializado como JSON. Portanto, meu JSON final retornado pela ação é assim:

{
    "ContentEncoding": null,
    "ContentType": null,
    "Data": {
        "ListItems": [
            {
                "ListId": 2,
                "Name": "John Doe"
            },
            {
                "ListId": 3,
                "Name": "Jane Doe"
            },
        ]
    },
    "JsonRequestBehavior": 1,
    "MaxJsonLength": null,
    "RecursionLimit": null
}

Não consigo serializar essa string JSON porque oJsonResult O objeto adicionou todos os tipos de outras propriedades a ele. Eu só estou interessado emListItems, nada mais. Mas acrescentou automaticamente coisas como:ContentType, MaxJsonLength etc ...

Agora, isso não funcionará para mim por causa de todas as outras propriedades na string JSON ...

var myList = JsonConvert.DeserializeObject<List<ListItems>>(jsonString);

Existe uma maneira de enviar um objeto JSON da ação para que ele não adicione todas as propriedades que eu não preciso?

questionAnswers(4)

yourAnswerToTheQuestion