我有以下方法
public SomeObj LoadSomeData(int id)
{
using (var context = new DataContext())
{
var result =
context.Database.SqlQuery<SomeObj>
($"SELECT * FROM SOMEOBJECT WHERE id = {id}")
return result;
}
}
Run Code Online (Sandbox Code Playgroud)
这工作正常,现在规范已经改变,我需要查找多个ids.我将id作为int列表并返回一个列表.我读了一些关于Sql Query的内容,我可以使用IN并传递多个值.所以这是我的改变:
public List<SomeObj> LoadSomeData(List<int> listOfIds)
{
using (var context = new DataContext())
{
var result =
context.Database.SqlQuery<SomeObj>
($"SELECT * FROM SOMEOBJECT WHERE id IN ({id})") <-- I am not sure how to pass list in
return result;
}
}
Run Code Online (Sandbox Code Playgroud)
当我手动将值传递给1,2,3等查询时,第二种方法有效,但如何将列表传递给查询?