linq to sql 多条件组合查询

linq to sql 我这里查询tbdesk表内的记录 DeskTypeID和Name是条件

    private void bind()
    {
        
using (cpDataContext cp = new cpDataContext())
        {
            Expression
<Func<tbDesk, bool>> expr = n => getc(n);
            var xquery 
= cp.tbDesk.Where<tbDesk>(expr.Compile());
            
this.GridView1.DataSource= xquery;
            GridView1.DataBind();
        }
    }
    
private bool getc(tbDesk tb) 
    {
        
//加等于true 或等于false
        bool rst = false;
        rst 
|= string.IsNullOrEmpty(TextBox1.Text.Trim()) ? false : tb.DeskTypeID.Equals(int.Parse(TextBox1.Text.Trim()));
        rst 
|= string.IsNullOrEmpty(TextBox2.Text.Trim()) ? false : tb.Name.Contains(TextBox2.Text.Trim());
        
return rst;

       
//注释的这部分内容为多条件and的时候
        
//bool rst = true;
        
//rst |= string.IsNullOrEmpty(TextBox1.Text.Trim()) ? true : tb.DeskTypeID.Equals(int.Parse(TextBox1.Text.Trim()));
        
//rst |= string.IsNullOrEmpty(TextBox2.Text.Trim()) ? true : tb.Name.Contains(TextBox2.Text.Trim());
        
//return rst;
    }

 

 

posted on 2010-06-20 17:07  alun  阅读(2946)  评论(1)    收藏  举报

导航