Asp.Net mvc, die Entsendung von json?

Mein iphone client sendet die folgende json zu meinem mvc-service.
Bei der Buchung von Daten aus html-Formular automatisch konvertiert Daten in das Formular zu UserModel und übergibt das Objekt an meine Create-Methode, aber wenn ich den JSON string in den Körper meiner Anfrage von einem iphone kommt es zurück, als null.

Was wäre die sauberste Lösung, um die Konvertierung von JSON-Objekt.

Ich eher nicht, erstellen Sie mehrere Methoden für die verschiedenen clients, so dass ich versuche die gleiche Methode funktioniert auf iphone und mvc-client.

Körper meiner Anfrage:

{
   "firstName" : "Some Name",
   "lastName" : "Some Last Name",
   "age" : "age"
}

Mein Modell und das Ergebnis einer Aktion

public class UserModel
{
   public int Id { get; set; }
   public string FirstName { get; set; }
   public string LastName { get; set; }
   public int Age { get; set; }
}

[HttpPost]
public Create ActionResult(UserModel user)
{
   //user is null
   userStorage.create(user);
   return SuccessResultForModel(user);
}
nur um zu bestätigen, die Sie konvertieren möchten, das Benutzer-Objekt, das trifft den controller von json?
Registrieren Sie die JsonValueProviderFactory ist (was gebraucht wird für MVC zu decodieren des JSON post-data)? Ist der client geben Sie den richtigen ContentType? Siehe stackoverflow.com/questions/4789481/... für weitere Dinge zu überprüfen (top-Antwort gestimmt hat die Liste).
Das JSON sieht nicht gültig ist, gibt es ein Komma nach "Alter"? Auch der Wert für Alter sollte ein int? (Obwohl ich denke, dass gelingt das nicht, wird ein default-int-Wert von 0). Auch Ihre HttpPost-Methode sagt Create Actionresult, sollte es nicht ActionResult Create?
Nein, ich habe nicht registriert, ich werde geben ti einen Versuch und post zurück, danke

InformationsquelleAutor aryaxt | 2013-03-10

Schreibe einen Kommentar