public void AddBom(string productId, string accessoryId) { var bom = _bomRepository.GetAll() .Where(e => e.AccessoryId == accessoryId) .Where(e => e.ProductId == productId) .SingleOrDefault(); if (bom == null) { bom = new Bom() { AccessoryId = accessoryId, ProductId = productId }; _bomRepository.Insert(bom); } }
public void UpdateBoms(string productId, IEnumerable <string> AccessoryIds) { var oldBoms = _bomRepository.GetAll().Where(e => e.ProductId == productId).ToList(); //删除 var delBoms = oldBoms.Where(e => !AccessoryIds.Contains(e.AccessoryId)); foreach (var delBom in delBoms) { _bomRepository.Delete(delBom); } //新增 foreach (string id in AccessoryIds) { var bom = oldBoms.Where(o => o.AccessoryId == id).SingleOrDefault(); if (bom == null) { bom = new Bom() { AccessoryId = id, ProductId = productId }; _bomRepository.Insert(bom); } } }