首页 > 解决方案 > JSON.Net 将输出日期转换为 XML

问题描述

我尝试使用 Dateformat 将 JSON 转换为 XML,如下所示:

原件:

{
    "contract": {
        "startDate": "2015-08-15T02:00:00+02:00",...}
}

结果应该是 XML:

<startdate>15.08.2018<\startdate>

我尝试了这些方法:

1)

string tmp = JsonConvert.SerializeObject(data, new IsoDateTimeConverter() { DateTimeFormat = "dd.MM.yyyy" });`

这在大多数情况下都能很好地进行转换

2)

创建方法并修饰 JSON 元素

public class DateFormatConverter : IsoDateTimeConverter
{
    public DateFormatConverter(string format)
    {
        DateTimeFormat = format;
    }
}

像这样调用:

[JsonConverter(typeof(DateFormatConverter), "dd.MM.yyy")]
    [JsonProperty("startDate", NullValueHandling = NullValueHandling.Ignore)]
    public DateTime? StartDate { get; set; }

并且没有进一步转换,但运行错误(没有有效的日期时间格式)->可能是 NULL 值的结果?

如何正确转换输出?

标签: datetimejson.net

解决方案


推荐阅读