Я пытаюсь десериализовать объект, который был сгенерирован LinqToSql. Пользователю разрешают отредактировать данные объекта в представлении, и затем это становится отправленным назад на контроллер. Отредактированные Данные прибывают в JSON. Как это действие должно быть похожим?
Что-то как...
public ActionResult(JsonObject json)
{
MyClass c = Jsonify(json) as MyClass;
}
Существует ли хороший полезный статический класс в платформе, которую я пропускаю? Или я должен создать DataContract?
Большое спасибо
System.Web.Script.Serialization.JavaScriptSerializer
public ActionResult Blah(JsonObject json)
{
JavaScriptSerializer js = new JavaScriptSerializer();
var c = js.Deserialize<MyClass>(json);
return View(c);
}
РЕДАКТИРОВАТЬ: Упс ... только что заметил, что вы передаете объект вместо строки .... так что вы потребуется использовать System.Runtime.Serialization.Json.DataContractJsonSerializer :
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(MyClass));
MyClass c = (MyClass)serializer.ReadObject(json);