JSON и ASP.NET MVC
Как вы возвращаете сериализованный объект JSON на клиентскую сторону с помощью ASP.NET MVC через вызов AJAX?
Ответы
Ответ 1
Из контроллера вы можете просто вернуть JsonResult:
public ActionResult MyAction()
{
... // Populate myObject
return new JsonResult{ Data = myObject };
}
Форма вызова Ajax будет зависеть от того, какую библиотеку вы используете, конечно. Используя jQuery, это будет что-то вроде:
$.getJSON("/controllerName/MyAction", callbackFunction);
где callbackFunction
принимает параметр, который является данными из запроса XHR.
Ответ 2
В зависимости от ваших синтаксических предпочтений работает следующее:
public ActionResult MyAction()
{
return Json(new {Data = myObject});
}
Ответ 3
Это малый блок кода для просто понимания, как мы можем использовать JsonResults в MVC-контроллерах.
public JsonResult ASD()
{
string aaa = "Hi There is a sample Json";
return Json(aaa);
}
Ответ 4
Если вам нужно отправить JSON в ответ на GET, вам нужно явно разрешить поведение с помощью JsonRequestBehavior.AllowGet.
public JsonResult Foo()
{
return Json("Secrets", JsonRequestBehavior.AllowGet);
}