Я пытаюсь выяснить, как выполнить серию запросов, чтобы получать обновления, удалять и вставлять сегрегированные в свои вызовы. У меня есть 2 таблицы, по одной в каждой из 2 баз данных. Одна - это база данных каналов только для чтения, а другая - источник T-SQL R / W Production. Существует несколько общих столбцов key между ними.
Что я делаю, чтобы настроить это:
List<model.AutoWithImage> feedProductList = _dbFeed.AutoWithImage.Where(a => a.ClientID == ClientID).ToList();
List<model.vwCompanyDetails> companyDetailList = _dbRiv.vwCompanyDetails.Where(a => a.ClientID == ClientID).ToList();
foreach (model.vwCompanyDetails companyDetail in companyDetailList)
{
List<model.Product> productList = _dbRiv.Product.Include("Company").Where(a => a.Company.CompanyId == companyDetail.CompanyId).ToList();
}
Теперь, когда у меня есть (исходный) список продуктов из ленты и существующий (целевой) список продуктов из моей базы данных, я бы хотел сделать 3 вещи:
- Найти все SKU в ленте, которых нет в цели
- Найдите все SKU, которые есть в обоих активных продуктах, и обновите цель
- Найти все SKU, которые есть в обоих неактивны и мягко удалены из цели
Каковы лучшие практики для этого без двойного цикла? Я бы предпочел решение LINQ 4 Objects, поскольку у меня уже есть мои объекты.
РЕДАКТИРОВАТЬ: Кстати, мне нужно будет перенести информацию из строк подачи в целевые строки в первых 2 случаях, просто установите флаг в последнем случае.
1024 * ТИА *