加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net web表单json返回结果

发布时间:2020-12-16 00:45:39 所属栏目:asp.Net 来源:网络整理
导读:我使用asp.net和web表单。 在我的项目中,我有asmx web服务 [WebMethod] public string GetSomething() { // avoid circual reference(parent child) ListRetUsers res = repo.GetAllUser().Select(c = new RetUsers {User_ID = c.User_ID,User_Name = c.Use
我使用asp.net和web表单。
在我的项目中,我有asmx web服务
[WebMethod]
    public string GetSomething()
    {
      // avoid circual reference(parent child)
      List<RetUsers> res = repo.GetAllUser().Select(c => new RetUsers {User_ID = c.User_ID,User_Name = c.User_Name,Date_Expire = c.Date_Expire }).ToList();
      string res1 = res.ToJson();
      // extension methods
      return res.ToJson();
    }

结果是这种格式。

[
    {"User_ID":1,"User_Name":"Test 1","Date_Expire":null},{"User_ID":2,"User_Name":"Test 2","Date_Expire":null}
]

如何附加标签,以$ .ajax的成功获取此输出:

1 – Test 1,2 – Test 2.

解决方法

返回列表,并使用[ScriptMethod(ResponseFormat = ResponseFormat.Json)]属性 – 它将创建JSON对象作为自动返回:
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)] 
public List<RetUsers> GetSomething()
{
  // avoid circual reference(parent child)
  List<RetUsers> res = repo.GetAllUser().Select(c => new RetUsers {User_ID = c.User_ID,Date_Expire = c.Date_Expire }).ToList();

  return res;
}

在JS方面:

$.ajax(
{
    type: "POST",async: true,url: YourMethodUrl,data: {some data},contentType: "application/json; charset=utf-8",dataType: "json",success: function(msg)
    {
        var resultAsJson = msg.d // your return result is JS array
        // Now you can loop over the array to get each object
        for(var i in resultAsJson)
        {
            var user = resultAsJson[i]
            var user_name = user.User_Name
            // Here you append that value to your label
        }
    }
})

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读