public static HotelFurniture AddOrUpdate(HotelFurniture value) { if (value == null) { throw new NullReferenceException("HotelFurniture value is null"); } try { if (IsContains(value)) //UPDATE { HotelFurniture existingModel = EntityConnection.HotelFurnitures.Where(x => x.Name.Equals(value.Name)).First(); if (existingModel == null) { throw new NullReferenceException("existingModel value is null"); } else { return(existingModel = value); } } else // ADD { return(EntityConnection.HotelFurnitures.Add(value)); } } finally { EntityConnection.SaveChanges(); } }
private void DataGridView_Furniture_CellEndEdit(object sender, DataGridViewCellEventArgs e) { if (!IsFurnitureBucket) { var furniture = new HotelFurniture() { Name = this.DataGridView_Furniture[0, e.RowIndex].Value.ToString() }; if (this.LstHotelFurnitures.Count != e.RowIndex) { this.LstHotelFurnitures[e.RowIndex].Name = furniture.Name; } else { if (this.LstHotelFurnitures.Where(x => x.Name.Equals(furniture.Name)).Count() == 0) { this.LstHotelFurnitures.Add(furniture); } else { MessageBox.Show("Такой элемент уже существует!"); BeginInvoke(new MethodInvoker(delegate { DataGridView_Furniture.Rows.RemoveAt(e.RowIndex); })); } } } }
/// <summary> /// Проверка на существование /// </summary> /// <param name="value">Мебель</param> /// <returns>true-существует, false-нет</returns> public static bool IsContains(HotelFurniture value) { if (EntityConnection.HotelFurnitures.AsEnumerable().Contains(value)) { return(true); } return(false); }