MVC json

1、 .net MVC中Controller

在mvc中所有的controller类都必须使用"Controller"后缀来命名

并且对Action也有一定的要求:

必须是一个public方法
        必须是实例方法
        没有标志NonActionAttribute特性的(NoAction)
        不能被重载
        必须返回ActionResult类

2、 返回JsonResult序列化的Json对象

public class MyController : Controller
{
   // 必须返回ActionResult类型
    public ActionResult HelloWorld()
    {
        ViewData["Message"] = "Hello World!";
        return View();
    }
 
    public ActionResult Json()
   {
     Dictionary<string, object> dic = new Dictionary<string, object>();
     dic.Add("id", 100);
     dic.Add("name", "hello");
     return Json(dic, JsonRequestBehavior.AllowGet);
    }
}

注意:需要设置参数,JsonRequestBehavior.AllowGet,
    否则会提示错误:此请求已被阻止,因为当用在 GET 请求中时,会将敏感信息透漏给第三方网站。
    若要允许 GET 请求,请将 JsonRequestBehavior 设置为 AllowGet。

3、View层 接受页面 使用JQuery

$.ajax({
          url: "/My/Json",
          type: "POST",
          contentType: "application/json; charset=utf-8",
          dataType: "json",
          success: function (data) {
              /*
              //接受数据
              当 data 为拼接字符串时,需要下面方法转换成 json对象
              var json = jQuery.parseJSON(data);
             */
               alert(data.id+","+data.name); // data 为json对象
          },
          error: function ErrorCallback(XMLHttpRequest, textStatus, errorThrown) {
              alert(errorThrown + ":" + textStatus);
          }
      });

上一篇:How to manage local libraries in IntelliJ IDEA


下一篇:sphinx的配置