public string GenerateUpdateJsonFromObject(IncomeSource updateFrom) { // form the json (determine the fields that need to be updated) var sb = new StringBuilder(); var sw = new StringWriter(sb); var writer = new JsonTextWriter(sw) { Formatting = Formatting.None }; writer.WriteStartObject(); writer.WritePropertyName(@"income_source"); writer.WriteStartObject(); if (!ProductServiceName.Equals(updateFrom.ProductServiceName)) { writer.WritePropertyName("name"); writer.WriteValue(updateFrom.ProductServiceName ?? @""); } if (!EstimatedVolumeProduced.Equals(updateFrom.EstimatedVolumeProduced)) { writer.WritePropertyName("estimated_volume_produced"); writer.WriteValue(updateFrom.EstimatedVolumeProduced ?? null); } if (!EstimatedVolumeSold.Equals(updateFrom.EstimatedVolumeSold)) { writer.WritePropertyName("estimated_volume_sold"); writer.WriteValue(updateFrom.EstimatedVolumeSold ?? null); } if (!UnitOfMeasure.Equals(updateFrom.UnitOfMeasure)) { writer.WritePropertyName("unit_of_measure"); writer.WriteValue(updateFrom.UnitOfMeasure ?? @""); } if (!EstimatedIncome.Equals(updateFrom.EstimatedIncome)) { writer.WritePropertyName("estimated_income"); writer.WriteValue(updateFrom.EstimatedIncome ?? null); } if (!Currency.Equals(updateFrom.Currency)) { writer.WritePropertyName("currency"); writer.WriteValue(updateFrom.Currency ?? @""); } if (!ExternalParentId.Equals(updateFrom.ExternalParentId)) { writer.WritePropertyName("household_id"); writer.WriteValue(updateFrom.ExternalParentId); } writer.WriteEndObject(); writer.WriteEndObject(); return(sw.ToString()); }
public bool GetObjectNeedsUpate(IncomeSource checkUpdateFrom) { if (!ProductServiceName.Equals(checkUpdateFrom.ProductServiceName)) { return(true); } if (!EstimatedVolumeProduced.Equals(checkUpdateFrom.EstimatedVolumeProduced)) { return(true); } if (!EstimatedVolumeSold.Equals(checkUpdateFrom.EstimatedVolumeSold)) { return(true); } if (!UnitOfMeasure.Equals(checkUpdateFrom.UnitOfMeasure)) { return(true); } if (!EstimatedIncome.Equals(checkUpdateFrom.EstimatedIncome)) { return(true); } if (!Currency.Equals(checkUpdateFrom.Currency)) { return(true); } if (!ExternalParentId.Equals(checkUpdateFrom.ExternalParentId)) { return(true); } return(false); }