如果可能,我需要將此代碼轉換爲一個請求。將LINQ請求(查詢)轉換爲一個無foreach請求
foreach (var obj in objs)
{
if (obj.cars.Count > maxCars)
{
var count = obj.cars.Count - maxCars;
var cars = _carDao.GetQueryable()
.Where(v => v.obj.Id == obj.Id)
.OrderByDescending(v => v.CreatedDate)
.Take(count);
}
}
我有問題count
。我可以使用這個請求:
var ids = objs.Select(p=>p.Id);
var cars = _carDao.GetQueryable().Where(v => ids.Contains(v.obj.Id));
但我有不同的計數。
你對當地的'count'和'cars'做了什麼?最後一個符合'obj.cars.Count> maxCars'的項目將覆蓋任何其他以前的任務 –