代码之家  ›  专栏  ›  技术社区  ›  Midhat

从ASP.NETWeb服务json输出中删除“d”对象

  •  5
  • Midhat  · 技术社区  · 16 年前

    我有一些javascript代码,用于处理用framework2.0构建的asp.netweb服务的json输出。现在我需要支持framework3.5web服务返回的数据。

    我想在服务器端解决这个问题

    3 回复  |  直到 16 年前
        1
  •  6
  •   Dave Ward    16 年前

    无法将3.5+服务配置为不返回 .d . 它也在那里,这很好,因为它可以防止外部JSON实体是数组时存在的棘手JSON劫持场景。

    ASP.NET AJAX的客户端代理自动隐藏 从你这里。如果它妨碍了您,我假设您正在使用jQuery之类的东西来调用服务? You can normalize the .d in jQuery by using its DataFilter callback

        2
  •  4
  •   Liran Barniv    7 年前

    这里有一个解决方法

        [WebMethod]
        [ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)]
        public void Status()
        {
            MyObject myObject = new MyObject(); // your object here
            var json = Newtonsoft.Json.JsonConvert.SerializeObject(myObject);
    
            HttpContext.Current.Response.Write(json);
        }
    
        3
  •  0
  •   Palash    10 年前

    推荐文章