0
我正在使用ServiceStack JsonObject.Parse來反序列化未知類型。ServiceStack使用JsonSerializer序列化JsonObject產生無效的json日期
之後,我使用ServiceStack JsonSerializer.SerializeToString重新串行化回json。
對象上有一個DateTime屬性,當它被重新系列化,JSON是不正確的日期
這裏是示例代碼
void Main()
{
var p = new Person { Name = "full name", Age = new DateTime(2000,1,1) };
var json = ServiceStack.Text.JsonSerializer.SerializeToString(p);
Console.WriteLine(json);
var jo = ServiceStack.Text.JsonObject.Parse(json);
var json2 = ServiceStack.Text.JsonSerializer.SerializeToString(jo);
Console.WriteLine(json2);
}
class Person
{
public string Name {get;set;}
public DateTime Age {get;set;}
}
和結果(注意周圍的日期多餘的斜線)
{"Name":"full name","Age":"\/Date(946713600000-0000)\/"}
{"Name":"full name","Age":"\\/Date(946713600000-0000)\\/"}
不幸的是,原來的JSON消息是序列化與WCF正如你所指出。此外,在鏈中,這些消息被進程反序列化,這些進程綁定使用XmlObjectSerializer派生類,如DataContractJsonSerializer – ObeseCoder 2014-10-30 18:44:28