Newtonsoft JSON dynamischer Eigenschaftsname
Ist es eine Möglichkeit, den Namen der Data-Eigenschaft während der Serialisierung zu ändern, sodass ich diese Klasse in meiner WEB-API wiederverwenden kann.
Zum Beispiel, wenn ich eine ausgelagerte Liste von Benutzern zurücksende, sollte die Data-Eigenschaft als "Benutzer" serialisiert werden, wenn ich eine Liste von Elementen zurücksende, sollte sie "Elemente" usw. heißen.
Ist so etwas möglich:
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; }
}
BEARBEITEN
Ich möchte eine Kontrolle über diese Funktionalität haben, z. B. die Übergabe des Namens, der verwendet werden soll, wenn dies möglich ist. Wenn meinclass
wird genanntUserDTO
, Ich möchte weiterhin, dass die serialisierte Eigenschaft @ heißUsers
, nichtUserDTOs
.
Beispie
var usersPagedData = new PagedData("Users", params...);