【发布时间】:2012-02-21 00:12:34
【问题描述】:
我有以下方法:
[HttpPost]
[AjaxOnly]
public JsonResult ValidateInput(string text)
{
return new EmptyJsonResult();
}
/// <summary>
/// returns a JSON result that is marked as being empty.
/// </summary>
public sealed class EmptyJsonResult : JsonResult
{
public EmptyJsonResult()
{
Data = new JsonResultData
{
Empty = true
};
}
}
public class JsonResultData
{
public bool Empty { get; set; }
public string[] Errors { get; set; }
}
我预计这会将{"Empty":true} 返回到浏览器,但它却返回{"Empty":true,"Errors":null}。
我可以设置任何属性或一些东西以避免在我没有填充的对象上返回空值吗?
【问题讨论】:
-
你想填充什么值?你总是可以为每个对象编写自己的 getter,但是 null 是可以的
-
也许你应该看看源代码,看看你是否可以改变一些东西。这是一个围绕该领域深入研究的 SO 问题:stackoverflow.com/questions/8833961/…
-
我将如何在这里实现
NullValueHandling.Ignore?
标签: c# jquery ajax model-view-controller