Ich habe jeden ähnlichen Artikel überprüft Ich kann hier finden und versuchte alles, was aussah wie es könnte ohne Erfolg funktionieren (obv, da ich jetzt die Frage stelle).WebAPI 2.0 Post Nicht Deserialisieren Liste <T> Eigenschaft
Ich habe einen WebAPI 2.0-Controller mit einer POST-Aktion, die ein Objekt vom Typ Reservation
aufnimmt. Dieses Objekt enthält unter anderem eine Eigenschaft mit dem Namen Items
vom Typ EquipmentItems
. Wie Sie sich vorstellen können, ist dies eine List-Eigenschaft. Ich schicke das Reservierungsobjekt um (unter Verwendung von PostAsJsonAsync("api/Reservation", reservation).Result
, wenn es jemanden interessiert).
Wenn ich im API-Controller lande, ist das Objekt Reservation
vollständig mit allem gefüllt, außer was in der -Eigenschaft ist.
Im Sinne der vollständigen Offenbarung, die Items
Eigenschaft innerhalb der Reservation
Klasse, ist eigentlich als eine Liste definiert, wo T IItemData
Schnittstelle ist. EquimpentItem
erbt von IItemData
tho, also nicht sicher, ob das die Sache erschwert.
Kann der Deserializer des nativen Controllers nicht mit List umgehen, wo T Interface ist?
Was ich weiß funktioniert die Definition der Liste als ein reguläres Array. Das funktioniert sehr gut, aber ich habe andere Anforderungen, die mich in Richtung List geführt haben.
Haben Sie Vorschläge, wie Sie die List-Eigenschaft korrekt deserialisieren lassen?