在 c# 中返回对象列表(分页)

Posted

技术标签:

【中文标题】在 c# 中返回对象列表(分页)【英文标题】:return a list of objects in c# (paging) 【发布时间】:2013-03-22 19:59:32 【问题描述】:

我正在尝试以 json 格式为 extjs 分页工具栏返回数据列表以及记录总数。 extjs 查找“count”以计算分页总数。这是我想要的格式。


  "count": 1,
  "listData": [
      
          "LastName": "Beckham",
          "FirstName": "David"
      
  ]

这是我的方法

    public static List<myList> newRecords(int start, int limit)
    
        List<myList> listData = new List<myList>();
        using (SqlConnection con = SqlTools.GetSqlConnection())
        
            con.Open();
            SqlCommand cmd = con.CreateCommand();
            cmd.CommandText = "id1_GetData";
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.Add("@limit", SqlDbType.Int).Value = limit;
            cmd.Parameters.Add("@start", SqlDbType.Int).Value = start;

            SqlDataReader reader = cmd.ExecuteReader();

            while (reader.Read())
            
                myList list1 = new myList();

                list1.LastName = reader["LastName"].ToString().Trim();
                list1.FirstName = reader["FirstName"].ToString().Trim();
                listData.Add(list1);
            
            con.Close();
            int count = countRecords(); //counts total number of records in db
            var pagingData = (new
            
                count,
                listData
            );

            //return myList;
            return new List<myList>(pagingData);
        
    

这样我什么也得不到……如果我返回 myList,我只会得到第一页。请帮忙

【问题讨论】:

EagleFox 你在做这个大错特错...你想在列表中成为什么LastName " " + FirstName..? 返回return new count = count, listData = listData ;怎么样?我看不出您在上面粘贴的内容如何编译。 DJ KRAZE...我返回一大堆数据..名字和姓氏只是示例...它基本上返回一个 JSON 字符串 我明白了 很高兴看到 myList 的定义,因为我只是在想一种方法,您可以将一个数组 的新项目添加到列表中 【参考方案1】:

我认为你想做的就是这样做:

return pagingData;

然后您可以调用 JSON 序列化器来创建 JSON 字符串。

【讨论】:

以上是关于在 c# 中返回对象列表(分页)的主要内容,如果未能解决你的问题,请参考以下文章

Django -- 分页 -- 批量导入

[Django学习]分页

Django分页

向 IQueryable 添加扩展方法,该方法对列表进行分页并在从 API 控制器方法返回时返回 json 对象

django之设置分页

MongoDB c#:关于分页的问题