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()を直接呼び出す必要があります...