public bool UpdateColumnValueRange(ColumnValueRangeDTO message) { using (var projectContext = new DataAccess.MyProjectEntities()) { var dbColumn = projectContext.Column.First(x => x.ID == message.ID); if (dbColumn.ColumnValueRange == null) { dbColumn.ColumnValueRange = new ColumnValueRange(); // projectContext.ColumnValueRange.Add(dbColumnValueRange); } //else // dbColumnValueRange = projectContext.ColumnValueRange.First(x => x.ID == message.ID); // dbColumnValueRange.ID = message.ID; //dbColumn.ColumnValueRange.ValueFromTitleOrValue = message.ValueFromTitleOrValue; while (dbColumn.ColumnValueRange.ColumnValueRangeDetails.Any()) { projectContext.ColumnValueRangeDetails.Remove(dbColumn.ColumnValueRange.ColumnValueRangeDetails.First()); } foreach (var keyValueRange in message.Details) { dbColumn.ColumnValueRange.ColumnValueRangeDetails.Add(new ColumnValueRangeDetails() { Value = keyValueRange.Value, KeyTitle = keyValueRange.KeyTitle, Tag1 = keyValueRange.Tag1, Tag2 = keyValueRange.Tag2 }); } //dbColumnValueRange.Name = message.Name; projectContext.SaveChanges(); return(true); } }
private void GetColumnValueRange(int id) { Message = bizColumnValueRange.GetColumnValueRange(id); if (Message == null) { Message = new ColumnValueRangeDTO(); Message.ID = ColumnID; } ShowMessage(); }
public ColumnValueRangeDTO ToColumnValueRangeDTO(DataAccess.ColumnValueRange item, bool titleIsValueIfEmpty) { ColumnValueRangeDTO result = new ColumnValueRangeDTO(); // result.ValueFromTitleOrValue = item.ValueFromTitleOrValue; result.Details = new List <ColumnValueRangeDetailsDTO>(); result.ID = item.ID; foreach (var rItem in item.ColumnValueRangeDetails) { var keyValueRange = new ColumnValueRangeDetailsDTO(); keyValueRange.ColumnValueRangeID = rItem.ColumnValueRangeID; keyValueRange.ID = rItem.ID; keyValueRange.Value = rItem.Value; keyValueRange.KeyTitle = rItem.KeyTitle; if (titleIsValueIfEmpty && string.IsNullOrEmpty(keyValueRange.KeyTitle)) { keyValueRange.KeyTitle = keyValueRange.Value; } keyValueRange.Tag1 = rItem.Tag1; keyValueRange.Tag2 = rItem.Tag2; result.Details.Add(keyValueRange); } return(result); }