我有以下linq查询:
var bas = new BaskoolEntities();
var radif = "0011395000505000821";
var query = (from a in bas.ChekedList
where a.Radifkolsal == radif
from b in bas.PrioritedList
where b.Radifkolsal == radif
from c in bas.IssuedBills
where c.Radifkolsal == radif
select new
{
a,
b,
c
}).ToList();
我希望在C#中使用Linq to Entity通过一个查询在3个表中找到一个没有关系的字段。我是Linq的新手,用谷歌搜索谷歌,但发现没有任何结果对我有用。 有谁能给我一个解决方案? 提前谢谢。
答案 0 :(得分:1)
如您的评论中所述,您想要查找是否至少有一个表格的结果,您可以使用Any()
执行此类操作:
var radif = "0011395000505000821";
var found = (from a in bas.ChekedList
where a.Radifkolsal == radif
|| bas.PrioritedList.Any(p => p.Radifkolsal == radif)
|| bas.IssuedBills.Any(i => i.Radifkolsal == radif)
select a).Any();
如果您使用var result = ..... select a.Radifkolsal
,则会获得值0011395000505000821
或null。这对我来说没用,除非你的目标是找到(我是否有匹配的结果),这正是上述查询所做的。