覆盖Json.net行为以考虑更多属性

时间:2012-01-28 05:24:44

标签: c# json.net

我需要使用Json.net将我的对象序列化到客户端,它的功能非常出色。但是,我希望扩展它的行为,以便在序列化期间使用更多属性,特别是来自Data Annotations命名空间的属性。

这是一个例子: 我需要输出一个日期,而不是将日期发送到客户端,并在那里格式化,我想控制服务器端输出的格式。

[DisplayFormat(DataFormatString = "{0:d}")]
public DateTime BirthDate { get;set;}

我查看了使用转换器来处理这个问题,但是在执行转换器的阶段,它没有引用返回声明属性的成员信息,因此我无法检查该属性。我假设我需要覆盖/扩展IContractResolver行为,但是关于所有部分如何适合的文档很少,例如JsonContract等。

我只需要指出整个事情是如何挂在一起的,我会把剩下的工作完成。提前感谢任何有帮助的人。

0 个答案:

没有答案