Esempio n. 1
0
        /// <summary>
        /// Matches <paramref name="columnMapping"> source column value and <paramref name="columnMapping">
        /// destination value. If they are equal skips them. Fills <paramref name="columnMapping"> destination otherwise.
        /// </summary>
        /// <param name="source">Source entity.</param>
        /// <param name="destination">Destination entity.</param>
        /// <param name="columnMapping">Column mapping.</param>
        private void SynchronizeColumns(Entity source, Entity destination,
                                        SynchronizationColumnMapping columnMapping)
        {
            object sourceValue      = source.GetColumnValue(columnMapping.SourceColumnName);
            object destinationValue = destination.GetColumnValue(columnMapping.DestinationColumnName);
            SynchronizationColumnComparator equalComparator = columnMapping.Comparator ?? EqualComparator;

            if (!equalComparator(sourceValue, destinationValue))
            {
                destination.SetColumnValue(columnMapping.DestinationColumnName, sourceValue);
            }
        }
Esempio n. 2
0
 /// <summary>
 /// Fills <paramref name="columnMapping"> destination with <paramref name="columnMapping"> source column value.
 /// </summary>
 /// <param name="source">Source entity.</param>
 /// <param name="destination">Destination entity.</param>
 /// <param name="columnMapping">Column mapping.</param>
 private void FillColumn(Entity source, Entity destination,
                         SynchronizationColumnMapping columnMapping)
 {
     destination.SetColumnValue(columnMapping.DestinationColumnName,
                                source.GetColumnValue(columnMapping.SourceColumnName));
 }