サーバーから非同期的にデータをロードしたいMVC Webサイトで作業しています。次のルート、コントローラー、およびモデルを配置しています
routes.MapRoute("Search", "Student/{class}/{min}", new { controller = "Student", action = "Search", class = UrlParameter.Optional,min= UrlParameter.Optional });
Controller:
public JsonResult GetClassPosts(string class, int min)
{
var blgObj = new Student();
string[,] classPosts = blgObj.GetClassPosts(class, min);
ViewData["ClassPosts"] = class;
ViewData["ClassPosts"] = classPosts;
//How To parse a multidimensional array to a JSON object?
return Json(classPosts, JsonRequestBehavior.AllowGet);
}
Model:
internal string[,] GetClassPosts(string class, int min)
{ …
var results = new string[10, 5];
try
{
SqlDataReader sqlRdr = Shared.ORC(sqlCon, sqlCom);
for (int i = 0; i < results.Length - 1 && sqlRdr.Read(); i++)
{ … }
} …
return results;
}
そして、私は.js
自分の関数を次のように書こうとしている別のものを持っています:
$.ajax({
url: '@Url.Action("student", " GetClassPosts ")',
type: "GET",
success: function (result) {
$("#somediv").append(....;
});
コントローラーから有効なJSONオブジェクトを返していないことは明らかであり、その方法がわからないので、誰か助けてください。