我有一个 web-API 项目和一个带有一些属性的简单类,有些被标记为 <JsonIgnore>
.
在我的 MVC Controller 中,我放置了 Return Json(instanceOfMyClass, JsonRequestBehavior.AllowGet)
.所有成员都是序列化的。
我把Return Json(Of MyClass)(instanceOfMyClass)
在我的 WEBAPI Controller 中。只有我打算序列化的成员存在。
如何独立于将要序列化的 Controller 忽略这些属性。
最佳答案
JsonResult
在 MVC 中实际上不使用 JSON.NET 这就是为什么 [JsonIgnore]
不管用。相反,它使用 JavaScriptSerializer
类(class)。
使JavaScriptSerializer
跳过一个属性,你可以吗[ScriptIgnore]
您的模型属性上的属性。
另一种方法是定制 ActionResult
使用 JSON.NET 的 JsonConvert
序列化对象,然后兑现 [JsonIgnore]
属性。
关于asp.net-mvc - JsonIgnore 在 System.Web.Mvc.Controller 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32160530/