c# – JToken:获取原始/原始JSON值
有没有办法从JToken获取原始/原始
JSON值?
问题: var data = JObject.Parse(@"{ ""SimpleDate"":""2012-05-18T00:00:00Z"",""PatternDate"":""2012-11-07T00:00:00Z"" }"); var value = data["SimpleDate"].Value<string>(); 该值现在是05/18/2012 00:00:00但我需要原始字符串2012-05-18T00:00:00Z. 有没有办法获得这个原始价值?另外,我无法改变JObject的创建方式(例如更改设置),因为它作为参数传递给我的类…… (参考:The original NJsonSchema issue) 解决方法
您无法获取原始字符串,日期字符串被识别并转换为
JsonReader 本身内的DateTime结构.如果你这样做,你可以看到这个:
Console.WriteLine(((JValue)data["SimpleDate"]).Value.GetType()); // Prints System.DateTime 但是,您可以通过执行以下操作来提取ISO 8601格式的日期: var value = JsonConvert.SerializeObject(data["SimpleDate"]); // value is "2012-05-18T00:00:00Z" 这将始终以JSON适当的字符串格式输出JValue.由于您的原始日期采用此格式,因此可能符合您的需求. (老实说,我很惊讶 如果您在阅读JObject时能够更改设置,则可以使用 var settings = new JsonSerializerSettings { DateParseHandling = DateParseHandling.None }; var data = JsonConvert.DeserializeObject<JObject>(@"{ ""SimpleDate"":""2012-05-18T00:00:00Z"",""PatternDate"":""2012-11-07T00:00:00Z"" }",settings); var value = data["SimpleDate"].Value<string>(); Debug.WriteLine(value); // Outputs 2012-05-18T00:00:00Z
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ruby-on-rails – 如何使用Globalize3制作本地化的Papercli
- ruby-on-rails – 如何测试ActiveRecord创建块内的行为?
- JSONP跨域访问API接口深入理解
- ruby-on-rails – 重定向的Rails验证
- xml文件中 xmlns xmlns:xsi 等解释
- plsql – 获取第一行 – 哪一个更好?
- Cocos2d-x3.5 _ 示例工程分析
- "AppDelegate.h" 和"AppDelegate.cpp&am
- ruby-on-rails – 为rails上的ruby配置记事本
- swftools安装配置--CentOS5