you may need to make sure that you apply an attribute [DataContract]and [DataMember]at its poco.
, mvc ControllerContext:
using System.Web;
using System.Web.Mvc;
using System.Web.Script.Serialization;
public static class MvcExtensions
{
public static T DeserializeJson<T>(this ControllerContext context)
{
var serializer = new JavaScriptSerializer();
var form = context.RequestContext.HttpContext.Request.Form.ToString();
return serializer.Deserialize<T>(HttpUtility.UrlDecode(form));
}
}
json JavaScriptSerializer :
var myInstance = controllerContext.DeserializeJson<MyClass>();
, , :
public class JsonBinder<T> : IModelBinder
{
public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
return controllerContext.DeserializeJson<T>();
}
}
mvc, poco:
[ModelBinder(typeof(JsonBinder<MyClass>))]