使用LinQ检查列是否包含逗号分隔的值

时间:2017-07-24 09:21:06

标签: c# mysql linq

我在数据库中有一个列,其中包含来自不同表的id。但是它可以有几个id并将它们存储为逗号分隔值。我想使用linq查找第一个查询的哪些结果包含第二个表中的某个id。

int selectedDestIndex = (int)objQry3.FirstOrDefault();
            var objQry = from objD in db.TourBookingTransactions
                      join tbt in db.TourBookingTours
                      on objD.TourBookingHeaderID equals tbt.TourBookingHeaderID
                      join tmst in db.ToursMsts
                      on tbt.TourID equals tmst.TourId
                         where objD.DTTM >= selectedStartDate
                         && objD.DTTM < selectedEndDate
                         select new { email = objD.Email, destinationIds = tmst.DestinationIds };
            var qry = objQry.ToList().Where(w => (w.destinationIds).Split(',').Contains(selectedDestIndex.ToString()));

目前,我正在从一个查询中获取电子邮件地址列表和包含ID列表的列。然后我还有一个查询,它给我我正在搜索的ID。我只想要包含此ID的电子邮件地址。当我按原样运行代码时,我收到一条错误消息,指出你不能用字符串[]执行.contains。我试过在谷歌搜索,但我找不到解决方案。任何帮助都会非常棒。我是LinQ的新手,所以不太确定我在做什么。

0 个答案:

没有答案