Voglio passare un oggetto JSON complesso. Ma quando eseguo il debug di Controller Action tutte le Proprietà virtuali sono nulle. Lavorare con ASP.NET, EF e CF.Come passare un oggetto JSON complesso al controller ASP.net
JSON è inviare:
POST http://localhost:53214/api/trans/ HTTP/1.1
Pragma: no-cache
Content-Type: application/json; charset=utf-8
Host: localhost:53214
Content-Length: 221
{
"trans": {
"Location": {
"locID": 2
}
}
}
Il modello trans:
public class trans
{
[Key]
public int tID { get; set; }
//public int? locID { get; set; }
public virtual Location Location { get; set; }
}
}
Così, quando ho sempre posto il JSON tramite Fiddler tutte le proprietà virtuali sono nulli.
Prima ho lavorato con chiavi esterne come commentato nel Modello. Funziona bene
Voglio ricostruire il codice per ottimizzare il codice stesso.
Come è possibile inizializzare le proprietà e deserializzare correttamente il JSON?
saluti Marcus
Puoi darmi la stringa Json che il tuo script genera? – Marcus
'{" tID ": 123," Posizione ": {" locID ": 456}}' – ramiramilu
@ramiramilu, qui si vincolano i valori del modulo all'oggetto javascript e quindi li si converte in json utilizzando Json.stringigy. var o = new Object(); o.tID = 123; o.Location = new Object(); o.Location.locID = 456; C'è qualche alternativa in modo che non devo legare questi valori uno per uno. Dal momento che ho una forma molto complessa e grande che consiste di grandi no di elementi generati dinamici, e ho bisogno di postarli sul controller. – Dragon