我有一个序列化的JSON字符串:(在VSTO自动化APP中)
string miPublicacionStr = JsonConvert.SerializeObject(miPublicacion).ToString();
{"IdPublicacion":0.0,"FechaPublicacion":"0001-01-01T00:00:00","IdUsuario":"juanp","FechaPublicacionHasta":"2013-02-17T00:00:00-05:00","FechaArchivoHasta":"2013-02-17T00:00:00-05:00","Suscriptores_IdSuscriptor":1,"IdTipoPublicacion":1.0}
然后我将它发送到一个网站,它就会到达我的动作控制器
{"IdPublicacion":0.0,"FechaPublicacion":"0001-01-01T00:00:00","IdUsuario":"juanp","FechaPublicacionHasta":"2013-02-17T00:00:00-05:00","FechaArchivoHasta":"2013-02-17T00:00:00-05:00","Suscriptores_IdSuscriptor":1,"IdTipoPublicacion":1.0}
他们之间没有区别。但是当尝试使用以下方法在我的网站上反序列化时:
Publicacion miPublicacion = JsonConvert.DeserializeObject<Publicacion>(miPublicacionJsonString);
它会抛出FormatException
,并显示消息“字符串格式错误”
这是必须映射的对象:
public partial class Publicacion
{
public decimal IdPublicacion { get; set; }
public System.DateTime FechaPublicacion { get; set; }
public string IdUsuario { get; set; }
public System.DateTime FechaPublicacionHasta { get; set; }
public System.DateTime FechaArchivoHasta { get; set; }
public int Suscriptores_IdSuscriptor { get; set; }
public decimal IdTipoPublicacion { get; set; }
}
我该怎么做才能避免这个问题?