Я получаю список продуктов из моей базы данных в виде BindingList. Я хотел бы обновить количество некоторых продуктов в этом списке, используя другой список товаров, уже выбранных пользователем.
Идея заключается в том, что пользователь выводит свежий список продуктов из базы данных. В списке будут показаны количества продуктов, которые уже были выбраны из предыдущего поиска.
Я придумал следующий вложенный цикл. Это работает, но плохо масштабируется, так как поиск в базе данных может привести к большому списку, который необходимо просмотреть. Как вы, ребята, думаете, что я могу улучшить это?
Кроме того, я пролистал класс, где преподавали нотацию Big-O. В чем сложность приведенного ниже решения?
Спасибо.
for (int i = 0; i < dbProducts.Count; i++ )
{
for (int j = 0; j < GlobalVars.productList.Count; j++)
{
EposProduct selectedProduct = GlobalVars.productList.ElementAt(j);
EposProduct dbProduct = dbProducts.ElementAt(i);
if(selectedProduct.ProductID == dbProduct.ProductID)
{
dbProduct.Quantity = selectedProduct.Quantity;
}
}
}