jquery – ASP.NET MVC返回Json结果?

我试图返回一个json结果(数组);
如果我手动完成它可以工作
resources:[
{
    name: 'Resource 1',id: 1,color:'red'
},{
    name: 'Resource 2',id: 2
}],

但我通过传递它有渲染问题:

在视图上:

resources:@Model.Resources

哪个在控制器上

public ActionResult Index()
        {
...
var model = new display();
model.Resources = GetResources();
}
 public JsonResult GetResources()
        {
            var model = new Models.ScheduledResource()
                {
                    id = "1",name = "Resource"
                };
            return new JsonResult() { Data = model,JsonRequestBehavior = JsonRequestBehavior.AllowGet };
        }

在模型上

public JsonResult Resources { get; set; }

但看看在html中呈现的是什么:

resources:System.Web.Mvc.JsonResult

我出错了什么想法?

解决方法

它应该是 :
public async Task<ActionResult> GetSomeJsonData()
{
    var model = // ... get data or build model etc.

    return Json(new { Data = model },JsonRequestBehavior.AllowGet); 
}

或更简单地说:

return Json(model,JsonRequestBehavior.AllowGet);

我注意到你从另一个不能工作的ActionResult调用GetResources().如果你想要获得JSON,你应该直接从ajax调用GetResources()…

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: &lt;span id=&quot...
jQuery 添加水印 &lt;script src=&quot;../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...