linq 查询 过滤数据中某个值是否在数组中

来源:互联网 发布:软件开发前期准备工作 编辑:程序博客网 时间:2024/04/30 11:24

条件如下:

表A(公司表):ID(INT,PK),Name(nvarchar(255))

表B(用户表):ID(INT,PK),Name(nvarchar(255)),CompanyId(int)


求:表B中CompanyId 在数组中的所有数据。

先创建一个int型数组,个人喜欢先用list再转。如下:


 var companyList = _companyQuery.GetCompany(sId).ToList();//满足条件的公司列表            List<int> companyList = new List<int>();            for (int i = 0; i < companyList.Count; i++)            {                companyList.Add(companyList[i].ID);            }            var companyArray = companyList.ToArray();

数组创建完成:

companyArray

var query = GetUsers(model);                if (query != null && query.Any())                {                    var result = query.Where(c => companyArray.Contains(c.CompanyId));//公司编号存在于数组的所有员工                                    }



End

0 0
原创粉丝点击