c# list 查询和排序 .
来源:互联网 发布:游族网络公告 编辑:程序博客网 时间:2024/04/30 15:58
1)前台代码(default.aspx)
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="ListTest.Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="gvwStudent" runat="server">
</asp:GridView>
</div>
</form>
</body>
</html>
2)后台代码
a)default.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace ListTest
{
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindStudent();
}
}
/// <summary>
/// 绑定student
/// </summary>
private void BindStudent()
{
gvwStudent.DataSource = SortItems();
gvwStudent.DataBind();
}
/// <summary>
/// 根据id排序
/// </summary>
/// <returns></returns>
private List<Student> SortItems()
{
List<Student> items = GetItems();
items.Sort();
return items;
}
/// <summary>
/// 根据name和sex获取students
/// </summary>
/// <returns></returns>
private IEnumerable<Student> GetItemsByNameAndSex()
{
IEnumerable<Student> items = GetItems().Where(u => u.Name == "lisi"&&u.Sex=="female");
return items;
}
/// <summary>
/// 根据id获取student
/// </summary>
/// <returns></returns>
private Student GetItemById()
{
Student item = GetItems().SingleOrDefault(u => u.Id == 3);
return item;
}
/// <summary>
/// 获取所有的student
/// </summary>
/// <returns></returns>
private List<Student> GetItems()
{
List<Student> items = new List<Student>();
items.Add(new Student(3,"zhangsan","male"));
items.Add(new Student(1,"lisi","female"));
items.Add(new Student(2,"wangwu","female"));
items.Add(new Student(4,"lisi","male"));
return items;
}
}
}
b)Student.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace ListTest
{
public class Student:IComparable
{
public Student(int id, string name,string sex)
{
this.Id = id;
this.Name = name;
this.Sex = sex;
}
private int id;
public int Id
{
get { return id; }
set { id = value; }
}
private string name;
public string Name
{
get { return name; }
set { name = value; }
}
private string sex;
public string Sex
{
get { return sex; }
set { sex = value; }
}
/// <summary>
/// 根据id排序
/// </summary>
/// <param name="obj"></param>
/// <returns></returns>
public int CompareTo(object obj)
{
if (obj is Student)
{
Student anotherItem = obj as Student;
return this.Id - anotherItem.Id;//asc
//return anotherItem.Id - this.Id; //desc
}
throw new ArgumentException("object is not a student");
}
}
}
- c# list 查询和排序
- c# list 查询和排序 .
- List 的排序和查询
- C# List排序
- C# list的排序
- C# 排序 List.Sort
- C# List排序Sort
- C# List<T>排序
- C# LIST排序功能
- C# List排序
- C# List 排序
- C# List排序
- C#的List排序
- C# List排序
- c# list 委托排序
- C# list sort 排序
- C# list排序
- C# List 排序
- python 单链表
- EPON+EoC场景下的端到端VLAN规划
- 神奇的曲线:探索式测试与基于脚本的测试之关系
- 大整数相减
- 最常被程序员们谎称读过的计算机书籍
- c# list 查询和排序 .
- PCB布线规则(一)
- PCB布线规则(二)
- JSON扫盲帖+JSON类教程
- TIBCO Rendezvous — 技术介绍
- 模拟地与数字地(转)--好玩
- PCB敷铜的“弊与利”
- 值分布不均衡的列建索引不收集直方图信息的结果
- Cache-Control缓存机制