我需要让JavaScriptSerializer忽略[ScriptIgnore]
标签。我想我可以使用自定义JavaScriptConverter来做到这一点。但是,我不太确定。我需要做的就是忽略该属性,其余的可以通过基本定义来完成。您可以在此处查看代码JavaScriptSerializer
。
我担心实现自定义转换器(例如此示例)最终会无法正确序列化复杂的自定义对象图。
回顾微软的 JavaScriptSerializer 代码,上线252-253
代码:
// Ignore all fields marked as [ScriptIgnore]
if (fieldInfo.IsDefined(typeof(ScriptIgnoreAttribute), true /*inherits*/))
continue;
是我真正需要绕过的唯一部分。我只需要注释掉那行代码。不幸的是,这实际上是不可能的,所以我需要一些方法来忽略整个过程的那一部分。
我怎样才能忽略那行代码,或者以某种方式提供一个不忽略[ScriptIgnore]
属性的自定义实现?