[英]Including values from external table in a LINQ statement
I want to write LINQ query for following SQL query: 我想为以下SQL查询编写LINQ查询:
SELECT A.ID
FROM TABLE_1 A, TABLE_2 B
WHERE A.ID = B.ID
AND B.STATEID IN (SELECT C.STATEID FROM STATE C WHERE C.REGIONID = 1)
For this I've managed to make following query: 为此,我设法进行以下查询:
var var1 = (from a in db.table_1
join b in db.table_2
on a.Id equals b.Id
where b.stateid =
select new
{
a.Id
}).ToList();)
Here how can I include all the StateIDs where RegionId is 1 to get the necessary output. 在这里,我如何包含RegionId为1的所有StateID以获得必要的输出。
Your equivalent Linq query would be something: 您等效的Linq查询将是:
var result = (from a in db.table_1
from b in db.table_2
where a.Id == b.Id
&& db.State.Any(c=>c.REGIONID == 1 && b.StateId == c.StateId)
select new
{
a.Id
}).ToList();
You can try this.. 你可以试试看
var var1 = (from a in db.table_1
join b in db.table_2
on a.Id equals b.Id
where db.State.Any(c=> c.RegionId == 1 && c.StateId == b.StateId)
select new
{
a.Id
}).ToList();)
Try this, 尝试这个,
var var1 = (from a in db.table_1
join b in db.table_2
on a.Id equals b.Id
where (db.State.Where(x => x.RegionId == 1).Select(x =>
x.StateId)).Contains(b.Id)
select new
{
a.Id
}).ToList();)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.