查询转换给出无法将 linq 中的错误转换为 sql
query conversion is giving can not convert error in linq to sql
SELECT [t0].[ID]
FROM [dbo].[test] AS [t0]
WHERE [t0].[CID] = 'abc'
and ([t0].[ID] IN (Select RID from master where CID='abc'))
ORDER BY [t0].[ID]
是我的查询,我写了一个Linq_to_sql相同的查询。但它向我抛出错误。
我的 Linq 查询。
Var IdList=db.Master.where(a=>a.CID=="abc").select(p=>new{p.RID}).toList();
var _List =db.test.where(a=>a.CID=="abc" && a.contains(IdList)).OrderBy(s => s.ID).ToList()
为什么会抛出错误?
can not convert from 'system.collection.Generic.List<<anonymous type:string RID>>'to 'string'
我们搞定了)
Var IdList=db.Master.where(a=>a.CID=="abc").select(p=>p.RID).toList();
var _List =db.test.where(a=>a.CID=="abc" && IdList.contains(a.ID)).OrderBy(s => s.ID).ToList();
如果您只获取一列,则无需在 select 中写入新内容,
而且你还必须使用 contains 方法来检查上面的 id 查询中是否存在 id。
var ridList = db.master.where(x=>x.cid === 'abc').select(x=>x.rid).tolist( );
db.test.where(x=>x.cid==='abc' && ridList.contains(x.id).OrderBy(s => s.ID).tolist();
SELECT [t0].[ID]
FROM [dbo].[test] AS [t0]
WHERE [t0].[CID] = 'abc'
and ([t0].[ID] IN (Select RID from master where CID='abc'))
ORDER BY [t0].[ID]
是我的查询,我写了一个Linq_to_sql相同的查询。但它向我抛出错误。
我的 Linq 查询。
Var IdList=db.Master.where(a=>a.CID=="abc").select(p=>new{p.RID}).toList();
var _List =db.test.where(a=>a.CID=="abc" && a.contains(IdList)).OrderBy(s => s.ID).ToList()
为什么会抛出错误?
can not convert from 'system.collection.Generic.List<<anonymous type:string RID>>'to 'string'
我们搞定了)
Var IdList=db.Master.where(a=>a.CID=="abc").select(p=>p.RID).toList();
var _List =db.test.where(a=>a.CID=="abc" && IdList.contains(a.ID)).OrderBy(s => s.ID).ToList();
如果您只获取一列,则无需在 select 中写入新内容, 而且你还必须使用 contains 方法来检查上面的 id 查询中是否存在 id。
var ridList = db.master.where(x=>x.cid === 'abc').select(x=>x.rid).tolist( );
db.test.where(x=>x.cid==='abc' && ridList.contains(x.id).OrderBy(s => s.ID).tolist();