예제 #1
0
 public static void UpdateValue <T>(this T targetNode, IModelNode sourceNode, params Expression <Func <T, object> >[] expressions) where T : IModelNode
 {
     foreach (var expression in expressions)
     {
         var attributeName = targetNode.GetPropertyName(expression);
         if (sourceNode.HasValue(attributeName))
         {
             var value = sourceNode.GetValue <T>(attributeName);
             sourceNode.ClearValue(attributeName);
             targetNode.SetValue(attributeName, value);
         }
     }
 }