qq544169037 2019-02-09 09:09 采纳率: 50%
浏览 629
已采纳

LINQ TO SQL 多字段 查询 c#

private void button8_Click(object sender, EventArgs e)//********************************* 查 找 ***************************************
{

        var lszcmxb = db.支出明细表.Where(item => item.ID > 0); // 支出明细表 记录   
        var  lsb = lszcmxb.Where(item => item.所属部门 == Convert.ToInt64(listBox1.SelectedValue)); //过滤 筛选  查找   
        var xxss = lsb.Select(item => new
        {
            ID = item.ID,
            所属部门 = item.部门名称表.部门名称,
            报账标识 = item.报账标识,
            报账日期 = item.报账日期,
            记账日期 = item.记账日期,
            付款标识 = item.付款标识,
            付款日期 = item.付款日期,
            付款方式 = item.付款方式表.付款方式,
            合计金额 = item.合计金额,
            票据单位 = item.票据单位,
        }).ToList();
        dgvItems.DataSource = xxss;//    
    }
            上面代码中,listBox1只选择一项(如:小学部),那么查询有效,但是进行多个选择时,如同时选择,小学部 和 幼儿园 ,语句该如何写?
             var lsb = lszcmxb.Where(item =>(item.所属部门 == 1 | item.所属部门 == 2)); // 这样写 倒是 一个办法
            假设 ListBox 里有100个选择项,同时选择80个,解决不了问题。
    var lsb = lszcmxb.Where(item => ?????? );
    ?????? 这里应该怎样写!
![图片说明](https://img-ask.csdn.net/upload/201902/09/1549675183_59329.jpg)
![图片说明](https://img-ask.csdn.net/upload/201902/09/1549675189_851186.jpg)
![图片说明](https://img-ask.csdn.net/upload/201902/09/1549675198_947428.jpg)
  • 写回答

1条回答 默认 最新

  • threenewbee 2019-02-09 14:00
    关注
    如果你是or的关系,可以构造多个查询,把它们用union连起来。
    var lsb = lszcmxb.Where(item =>(item.所属部门 == 1 || item.所属部门 == 2)); 
    相当于
    var lsb = lszcmxb.Where(item =>item.所属部门 == 1);
    lsb = lsb.Union(lszcmxb.Where(item => item.所属部门 == 2)); 
    
    如果你80个选项,都是所属部门,还可以用Contains
    int[] 部门 = {1,2,3,4};
    var lsb = lszcmxb.Where(item =>部门.Contains(item.所属部门));
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 调用函数时,无关变量的改变引起函数值的改变
  • ¥15 xy坐标转化为经纬度坐标
  • ¥15 一般三角模糊数的上界值和下届值取中值的多少比较合理?
  • ¥15 关于#python#的问题,请各位专家解答!
  • ¥20 Hbase启动失败,无法启动HMaster
  • ¥15 sqpingboot在父模块已经引入了mybatisplus 在子组件不写版本号还是报错
  • ¥20 Lumerical FDTD solutions 中模型的相对阻抗,有效介电常数和有效磁导率的实部和虚部的数据如何获得?
  • ¥100 sql reporting service 远程smtp服务器配置支持
  • ¥15 ppyoloe_r带角度目标检测,loss_cls没法收敛
  • ¥15 淘宝交易指数如何解读,其关联的数据指标是什么