【发布时间】:2009-09-15 17:38:20
【问题描述】:
我有一个使用 JsonResult 序列化的自定义视图模型。 ViewModel 有一些必须公开的属性,但同时这些属性在生成的 Json 输出中不应该是可见的。
我已经尝试过使用 [NonSerialized] 属性,但这似乎没有任何效果。
有什么简单的方法可以做到这一点吗?还是我必须编写自己的结果类型(在这种情况下我可能不会打扰)?
【问题讨论】:
-
大部分答案是使用属性或包装器。我只想在序列化过程中简单地排除一些公共属性。我正在寻找@Charlino 建议的 JSON.NET,但没有找到方法。就是这种情况:我有
Error属性,它只会在发生错误时设置。客户端将首先检查是否显示消息,否则将显示模型属性的其余部分。没有错误时会渲染{...,"Error":null}!
标签: asp.net-mvc json serialization