众所周知,ASP.NET web api(ApiController)通过NewtonSoft.JSON自动提供JSON响应。
我的三级 1:MANY:1 EF数据模型以多种方式查询,并且将[JsonIgnore]属性应用于某些虚拟属性以便消除参考循环问题,它可以正常工作。 (我在this(link)回答中使用第三个解决方案)
但我的问题是,我有时需要使用json-ignored属性来查询模型。
有没有方法可以在运行时控制 [JsonIgnore] 属性? 或者,是否有任何方法可以在运行期间切换要在NewtonSoft.JSON中忽略的on-and-off属性?
答案 0 :(得分:2)
我知道解决这个问题的两种方法:
IContractResolver
。这种方法更复杂,但更灵活。此处描述的两种解决方案:'条件属性序列化'http://james.newtonking.com/json/help/index.html?topic=html/ConditionalProperties.htm