linQ高级查询、组合查询、IQueryable集合类型(延时查询)

高级查寻:

升序:

Repeater1.DataSource = con.car.OrderBy(r => r.price);

降序:

 Repeater1.DataSource = con.car.OrderByDescending(r => r.price);

模糊查询:

Repeater1.DataSource = con.car.Where(r => r.name.Contains(s)).ToList();

开头:

 Repeater1.DataSource = con.car.Where(r => r.name.StartsWith(s)).ToList();

结尾:

Repeater1.DataSource = con.car.Where(r => r.name.EndsWith(s)).ToList();

个数:

 IEnumerable<car> clist = con.car;

            Repeater1.DataSource = clist;
            Repeater1.DataBind();
        Label1.Text = clist.count().ToString();

最大值:

IEnumerable<car> clist = con.car;

            Repeater1.DataSource = clist;
            Repeater1.DataBind();        
            Label1.Text = clist.Max(r => r.price).ToString();

最小值:

IEnumerable<car> clist = con.car;

            Repeater1.DataSource = clist;
            Repeater1.DataBind();        
            Label1.Text = clist.Min(r => r.price).ToString();

求和:

 IEnumerable<car> clist = con.car;

            Repeater1.DataSource = clist;
            Repeater1.DataBind();        
            Label1.Text = clist.Sum(r => r.price).ToString();

分页:

 void btn_prev_Click(object sender, EventArgs e)
    {
        int nowpage = Convert.ToInt32(la_pagenum.Text) - 1;
        if (nowpage < 1)
        { return; }
        la_pagenum.Text = nowpage.ToString();

        using (DataClassesDataContext con = new DataClassesDataContext())
        {
            Repeater1.DataSource = con.users .Skip((nowpage - 1) * count).Take(count);
            Repeater1.DataBind();
        }
    }

    void btn_next_Click(object sender, EventArgs e)
    {
        using (DataClassesDataContext con = new DataClassesDataContext())
        {
            int nowpage = Convert.ToInt32(la_pagenum.Text) + 1;
            int max = Convert.ToInt32(Math.Ceiling(con.users.Count() * 1.0 / count));
            if (nowpage > max)
            { return; }

            la_pagenum.Text = nowpage.ToString();


            Repeater1.DataSource = con.users.Skip((nowpage - 1) * count).Take(count);
            Repeater1.DataBind();
        }

    }

组合查询:

 void Button1_Click(object sender, EventArgs e)
    {
        using (DataClassesDataContext con = new DataClassesDataContext())
        {
            IQueryable<users> ulist = con.users.AsQueryable();

            string name = txt_name.Text.Trim();
            string nick = txt_n.Text.Trim();
            string bir =txt_br.Text.Trim();

            if (name.Length > 0)
            { ulist = ulist.Where(r => r.username.Contains(name));}
            if (nick.Length > 0)
            { ulist = ulist.Where(r => r.nickname.Contains(nick)); }
            if (bir.Length > 0)
            {
                string aa = DropDownList1.SelectedValue;
                if (aa == "=")
                { ulist = ulist.Where(r=>r.birthday==Convert.ToDateTime(bir)); }
                if (aa == ">=")
                { ulist = ulist.Where(r=>r.birthday>=Convert.ToDateTime(bir)); }
                if (aa == "<=")
                { ulist = ulist.Where(r =>r.birthday <= Convert.ToDateTime(bir)); }

            }
            Repeater1.DataSource = ulist;
            Repeater1.DataBind();
        
        }
    }

 IQueryable延时查询

原文地址:https://www.cnblogs.com/wy1992/p/6382935.html