Nombre de propiedad dinámica de Newtonsoft JSON

¿Hay alguna manera de cambiar el nombre de la propiedad de datos durante la serialización, para que pueda reutilizar esta clase en mi API WEB?

Por ejemplo, si estoy devolviendo una lista paginada de usuarios, la propiedad de datos debería serializarse como "usuarios", si estoy devolviendo una lista de elementos, debería llamarse "elementos", etc.

Es posible algo como esto:

public class PagedData
{
    [JsonProperty(PropertyName = "Set from constructor")]??
    public IEnumerable<T> Data { get; private set; }
    public int Count { get; private set; }
    public int CurrentPage { get; private set; }
    public int Offset { get; private set; }
    public int RowsPerPage { get; private set; }
    public int? PreviousPage { get; private set; }
    public int? NextPage { get; private set; }
}

EDITAR:

Me gustaría tener un control sobre esta funcionalidad, como pasar el nombre que se utilizará si es posible. Si miclass se llamaUserDTO, Todavía quiero que se llame a la propiedad serializadaUsersnoUserDTOs.

Ejemplo

var usersPagedData = new PagedData("Users", params...);

Respuestas a la pregunta(5)

Su respuesta a la pregunta