server.aspx.cs 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Web;
  4. using System.Web.UI;
  5. using System.Web.UI.WebControls;
  6. using System.Web.Script.Serialization;
  7. using System.Linq;
  8. public partial class dotnetdemos_grid_treegrid_tree : System.Web.UI.Page
  9. {
  10. protected void Page_Load(object sender, EventArgs e)
  11. {
  12. if (Request.Params["Action"] == "GetData")
  13. {
  14. GetData();
  15. Response.End();
  16. }
  17. }
  18. class Node
  19. {
  20. public int id { get; set; }
  21. public string name { get; set; }
  22. public string remark { get; set; }
  23. }
  24. void GetData()
  25. {
  26. string sortname = Request.Params["sortname"];
  27. string sortorder = Request.Params["sortorder"];
  28. int page = Convert.ToInt32(Request.Params["page"]);
  29. int pagesize = Convert.ToInt32(Request.Params["pagesize"]);
  30. IList<Node> list = new List<Node>();
  31. var total = 1000;
  32. for (var i = 0; i < total; i++)
  33. {
  34. list.Add(new Node()
  35. {
  36. id = i,
  37. name = "部门" + i,
  38. remark = "部门" + i + " 备注"
  39. });
  40. }
  41. if (sortorder == "desc")
  42. list = list.OrderByDescending(c => c.id).ToList();
  43. else
  44. list = list.OrderBy(c => c.id).ToList();
  45. IList<Node> targetList = new List<Node>();
  46. for (var i = 0; i < total; i++)
  47. {
  48. if (i >= (page - 1) * pagesize && i < page * pagesize)
  49. {
  50. targetList.Add(list[i]);
  51. }
  52. }
  53. var griddata = new { Rows = targetList, Total = total };
  54. string s = new JavaScriptSerializer().Serialize(griddata);
  55. Response.Write(s);
  56. }
  57. }