码迷,mamicode.com
首页 > 其他好文 > 详细

Linq语句in与not in的使用

时间:2020-06-28 12:56:02      阅读:65      评论:0      收藏:0      [点我收藏+]

标签:guid   where   col   length   contain   microsoft   语句   eid   end   

1.IN的使用;

(1)当多项查询的是Guid类型时;

#region 将string数组转化Guid数组
                string[] ProjIdList = ProjIdset.Trim().Split(,);
                Guid[] guid_ProjId = new Guid[ProjIdList.Length];
                for (int i = 0; i < ProjIdList.Length; i++)
                {
                    guid_ProjId[i] = new Guid(ProjIdList[i]);
                }
#endregion

list_data = list_data.Where(p => (guid_ProjId.Contains(p.WareID))).ToList();

(2)当多项查询的是int类型时;

#region 将string类型转化为int类型的隐式数组
             string[] ProjTmId_set = ProjTmIdmodel.Trim().Split(,);
             int?[] ProjTmId_set_num_at = new int?[ProjTmId_set.Length];
#endregion

DetailList = DetailList.Where(p => (ProjTmId_set_num_at).Contains(p.ProjTmId)).ToList();

(3)当多项查询的是string类型时;

#region string数组
              string[] ProjIdList = ProjIdset.Trim().Split(,);
#endregion

list_data = list_data.Where(p => (ProjIdList.Contains(p.WareName))).ToList();

2.Not IN的使用;

(1)当多项查询的是Guid类型时;

#region 将string数组转化Guid数组
                string[] ProjIdList = ProjIdset.Trim().Split(,);
                Guid[] guid_ProjId = new Guid[ProjIdList.Length];
                for (int i = 0; i < ProjIdList.Length; i++)
                {
                    guid_ProjId[i] = new Guid(ProjIdList[i]);
                }
#endregion

list_data = list_data.Where(p =>!(guid_ProjId.Contains(p.WareID))).ToList();

(2)当多项查询的是int类型时;

#region 将string类型转化为int类型的隐式数组
             string[] ProjTmId_set = ProjTmIdmodel.Trim().Split(,);
             int?[] ProjTmId_set_num_at = new int?[ProjTmId_set.Length];
#endregion

DetailList = DetailList.Where(p => !(ProjTmId_set_num_at).Contains(p.ProjTmId)).ToList();

(3)当多项查询的是string类型时;

#region string数组
              string[] ProjIdList = ProjIdset.Trim().Split(,);
#endregion

list_data = list_data.Where(p => !(ProjIdList.Contains(p.WareName))).ToList();

 

总结:IN与Not IN通过“!”来区分,且除string的类型字段外,其他类型都需先进行数组转换,方可使用!

 

如果哪里有写错的地方,欢迎指正!

 

如果写的对你有所帮助的话,记得点个赞哦!

 

Linq语句in与not in的使用

标签:guid   where   col   length   contain   microsoft   语句   eid   end   

原文地址:https://www.cnblogs.com/lysouko/p/13202091.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!