标题说明了一切。我看到它(及其相应的结尾)吐出以下内容......
new Foo(
)
...但我不明白什么new
实际上是在反序列化时执行的。文档只是说它编写了一个 Json 构造函数,但没有说 Json 构造函数是什么is!
此方法是作为增强功能的一部分引入的,以允许 Json.NET 在使用 JavaScript 构造函数表示时解析日期文字,如下所示:new Date(1234656000000) https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date。详细信息请参见在 JSON 中序列化日期 http://www.newtonsoft.com/json/help/html/DatesInJSON.htm。尽管根据JSON标准 http://json.org/,显然有足够的需求来支持 Newtonsoft 将其放入。
因此有必要添加低级方法JsonWriter http://www.newtonsoft.com/json/help/html/T_Newtonsoft_Json_JsonWriter.htm and JsonReader http://www.newtonsoft.com/json/help/html/T_Newtonsoft_Json_JsonReader.htm以这种格式写入和读取文字。 (严格来说,我认为写作可以附加到WriteRaw http://www.newtonsoft.com/json/help/html/M_Newtonsoft_Json_JsonWriter_WriteRaw.htm,这有点hackey,而且无论如何也没有方法ReadRaw
) WriteStartConstructor http://www.newtonsoft.com/json/help/html/M_Newtonsoft_Json_JsonWriter_WriteStartConstructor.htm是这些低级实用方法之一。
还有一个高级 Linq-to-JSON 类JConstructor http://www.newtonsoft.com/json/help/html/T_Newtonsoft_Json_Linq_JConstructor.htm来表示这个语法。您可以根据需要使用它来支持其他特定的 JavaScript 构造函数,例如参见如何使用 JSON.Net 转换新的日期(年、月、日)重载 https://stackoverflow.com/questions/31577833/how-to-convert-new-dateyear-month-day-overload-with-json-net/31578239#31578239.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)