private static void TransferValue(object source, string sourcePropertyName, object target, string targetPropertyName)
{
Argument.IsNotNull("source", source);
Argument.IsNotNull("target", target);
Argument.IsNotNullOrWhitespace("sourcePropertyName", sourcePropertyName);
Argument.IsNotNullOrWhitespace("targetPropertyName", targetPropertyName);
object valueToTransfer = PropertyHelper.GetPropertyValue(source, sourcePropertyName, false);
Log.Debug("Transferring value of {0}.{1} to {2}.{3}", source.GetType().Name, sourcePropertyName, target.GetType().Name, targetPropertyName);
PropertyHelper.SetPropertyValue(target, targetPropertyName, valueToTransfer, false);
}
#endregion