Newtonsoft JSON динамическое имя свойства
Есть ли способ изменить имя свойства Data во время сериализации, чтобы я мог повторно использовать этот класс в моем WEB-интерфейсе API.
Например, если я возвращаю постраничный список пользователей, свойство Data должно быть сериализовано как «пользователи», если я возвращаю список элементов, оно должно называться «items» и т. Д.
Возможно ли что-то подобное:
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; }
}
РЕДАКТИРОВАТЬ:
Я хотел бы иметь контроль над этой функцией, такой как передача имени, которое будет использоваться, если это возможно. Если мойclass
называетсяUserDTO
Я все еще хочу, чтобы сериализованное свойство вызывалосьUsers
неUserDTOs
.
пример
var usersPagedData = new PagedData("Users", params...);