public async Task <IHttpActionResult> Post(ColdRoomTemperature item) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } item.ObjectState = ObjectState.Added; _service.Insert(item); try { await _unitOfWorkAsync.SaveChangesAsync(); } catch (DbUpdateException) { if (ItemExists(item.ColdRoomTemperatureID)) { return(Conflict()); } throw; } return(Created(item)); }
/// <summary> /// Get a list of QueryFilter that represent changed fields. /// </summary> /// <param name="original">Original Entity. The unchanged entity.</param> /// <param name="changed">Changed Entity. The entity holding the changed fields.</param> /// <returns>QueryFilters of ColdRoomTemperatureProperty</returns> public static QueryFilters <ColdRoomTemperatureProperty> GetChanges(ColdRoomTemperature original, ColdRoomTemperature changed) { // this method returns a list of changes. var changes = new QueryFilters <ColdRoomTemperatureProperty>(6); #region Detect Changes if (original.ColdRoomTemperatureID != changed.ColdRoomTemperatureID) { changes.Add(QueryFilter.New(ColdRoomTemperatureProperty.ColdRoomTemperatureID, FilterConditions.Equals, changed.ColdRoomTemperatureID)); } if (original.ColdRoomSensorNumber != changed.ColdRoomSensorNumber) { changes.Add(QueryFilter.New(ColdRoomTemperatureProperty.ColdRoomSensorNumber, FilterConditions.Equals, changed.ColdRoomSensorNumber)); } if (original.RecordedWhen != changed.RecordedWhen) { changes.Add(QueryFilter.New(ColdRoomTemperatureProperty.RecordedWhen, FilterConditions.Equals, changed.RecordedWhen)); } if (original.Temperature != changed.Temperature) { changes.Add(QueryFilter.New(ColdRoomTemperatureProperty.Temperature, FilterConditions.Equals, changed.Temperature)); } if (original.ValidFrom != changed.ValidFrom) { changes.Add(QueryFilter.New(ColdRoomTemperatureProperty.ValidFrom, FilterConditions.Equals, changed.ValidFrom)); } if (original.ValidTo != changed.ValidTo) { changes.Add(QueryFilter.New(ColdRoomTemperatureProperty.ValidTo, FilterConditions.Equals, changed.ValidTo)); } #endregion return(changes.Count > 0 ? changes : null); }
/// <summary> /// Compare 2 Entities for changes. NavProperties are NOT taken into account. For NavProperties use the corresponding utils for those Entities /// </summary> /// <param name="one">Entity One.</param> /// <param name="two">Entity Two.</param> /// <returns>True if there is changes. False if no changes found.</returns> public static bool HasChanges(ColdRoomTemperature one, ColdRoomTemperature two) { // this method returns true if differences are found between the 2 entities. #region Detect Changes if (one.ColdRoomTemperatureID != two.ColdRoomTemperatureID) { return(true); } if (one.ColdRoomSensorNumber != two.ColdRoomSensorNumber) { return(true); } if (one.RecordedWhen != two.RecordedWhen) { return(true); } if (one.Temperature != two.Temperature) { return(true); } if (one.ValidFrom != two.ValidFrom) { return(true); } if (one.ValidTo != two.ValidTo) { return(true); } #endregion return(false); }
/// <summary> /// Merge all values from one Entity into another one. /// </summary> /// <param name="source">Source Entity. Will be copied to the target.</param> /// <param name="target">Target Entity. Will receive the values from the source.</param> /// <returns>void.</returns> public static void Merge(ColdRoomTemperature source, ColdRoomTemperature target) { // this method merges 2 Entities. #region Merge Values target.ColdRoomTemperatureID = source.ColdRoomTemperatureID; target.ColdRoomSensorNumber = source.ColdRoomSensorNumber; target.RecordedWhen = source.RecordedWhen; target.Temperature = source.Temperature; target.ValidFrom = source.ValidFrom; target.ValidTo = source.ValidTo; #endregion }
public async Task <IResponse> UpdateColdRoomTemperatureAsync(ColdRoomTemperature entity) { Logger?.LogInformation("'{0}' has been invoked", nameof(UpdateColdRoomTemperatureAsync)); try { UnitOfWork.Repository <ColdRoomTemperature>().Update(entity); await UnitOfWork.SaveChangesAsync(); return(new Response()); } catch (Exception ex) { return(new Response(Logger, nameof(UpdateColdRoomTemperatureAsync), ex)); } }
public async Task <IHttpActionResult> Put([FromODataUri] System.Int64 ColdRoomTemperatureID, ColdRoomTemperature item) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (ColdRoomTemperatureID == item.ColdRoomTemperatureID) { return(BadRequest()); } item.ObjectState = ObjectState.Modified; _service.Update(item); try { await _unitOfWorkAsync.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ItemExists(ColdRoomTemperatureID)) { return(NotFound()); } throw; } return(Updated(item)); }