我有一个用逗号分隔的值列表,我需要将这些值传递给LINQ查询,并从DB中获得匹配的值,我已经使用了for循环来解决这个问题
这是我的代码
string drawingList="a,b,c,d";
string[] drawings = drawingList.Trim(',').Split(',');
IQueryable<table> filteredItems = null;
filteredItems =(some linq query)
List<table> filteredResult = new List<table>();
for (int i = 0; i < drawings.Count(); i++)
{
dr = drawings[i].Trim();
filteredItems = filteredItems.Where(p1 => p1.WorkItemNumber.Equals(dr));
filteredResult.AddRange(filteredItems);
}
如果没有for循环,我如何解决上述问题
尝试
filteredItems = filteredItems.Where(i => drawings.Contains(i => i.WorkItemNumber));
var result = from drUntrimmed in drawings
let dr = drUntrimmed.Trim()
from f in filteredItems
where f.WorkItemNumber.Equals(dr)
select f;