我正在使用Web,它内部使用Json.Net。目前,我有一个场景,我需要只对一个特定的模型应用自定义合同解析器。我可以使用像JsonConverter这样的属性应用自定义的[JsonConverter(typeof(MyConverter))]。是否有可能以同样的方式在一个模型上应用自定义合同解析器?
在我的场景中,我需要能够在反序列化过程中使用[JsonProperty]属性,但在序列化过程中忽略它们,只针对我的一个模型类。
发布于 2017-05-06 21:53:23
没有将合同解析器应用于特定模型的属性,因为负责确定哪些属性应用于模型的是合同解析器本身。
您可以创建一个自定义解析器,它在模型类上查找自定义属性,以确定是否对该类应用特殊行为,如果没有该属性,则返回到使用默认行为。
但是,我不认为这个想法适用于您的场景,因为您使用的是Web,您只想在序列化期间应用特殊的行为(忽略JsonProperty属性),而不想应用反序列化。据我所知,解析器无法判断它用于哪个操作。因此,您需要一个自定义绑定程序或格式化程序,以便在适当的时候有选择地应用解析器。
https://stackoverflow.com/questions/43820249
复制相似问题