数据分页进行存储适用于接口开发

List<string> rowSelected = new List<string>();

            if(orderNo.Count>0)
            {       
                //CurrentPage 第几页
                //PageSize 一页多少条数据
                int CurrentPage = 1;
                int PageSize = 20;
                while (true)
                {
                   List<string> selectTwoCount= (orderNo.Skip((CurrentPage - 1) * PageSize).Take(PageSize)).ToList();
                    if(selectTwoCount.Count>0)
                    {
                        StringBuilder str = new StringBuilder();
                        List<string> selected= selectTwoCount.Take(PageSize).ToList();
                        foreach (string item in selected)
                        {
                            str.Append(item + ",");
                        }
                        rowSelected.Add(str.ToString().Substring(0, str.ToString().Length - 1));
                    }
                    else
                    {
                        break;
                    }
                    CurrentPage++;
                }
                string orderDetailRows = "";
                for (int i = 0; i < rowSelected.Count; i++)
                {

                    orderDetailRows = coc.GetInfo("xxxxxxx?" + headPara(p) + "&sign=" + signStr + "", "POST", "{\"shopIdenty\":" + shopIdenty + ",\"ids\":[" + rowSelected[i] + "]}");
                    JObject jo = JObject.Parse(orderDetailRows);
                    if (jo["message"].ToString().Contains("OK"))
                    {
                        JArray ja = (JArray)jo["result"];
                        foreach (JToken item in ja)
                        {
                           JArray jaRow= (JArray)item["payInfos"];
                            foreach (JToken rowInfo in jaRow)
                            {
                                Dictionary<string, decimal> row = new Dictionary<string, decimal>();
                                row.Add(rowInfo["payModeName"].ToString().Contains("现金") ? "现金收入" : "微信、支付宝收入", Convert.ToDecimal(rowInfo["shopActualAmount"].ToString()) / 100);
                                orderStr.Add(row);
                            }

                        }
                    }

                }

            }

猜你喜欢

转载自blog.51cto.com/yataigp/2619384