internal void AbsorbCurrentValues(ComplexAspect sourceAspect)
 {
     this.ComplexType.DataProperties.ForEach(p => {
         var sourceValue = sourceAspect.GetValue(p);
         if (p.IsComplexProperty)
         {
             var targetChildCo     = GetValue <IComplexObject>(p);
             var targetChildAspect = targetChildCo.ComplexAspect;
             var sourceChildAspect = ((IComplexObject)sourceValue).ComplexAspect;
             targetChildAspect.AbsorbCurrentValues(sourceChildAspect);
         }
         else
         {
             SetDpValue(p, sourceValue);
         }
     });
 }
Beispiel #2
0
 protected T GetValue <T>([CallerMemberName] string propertyName = "")
 {
     return(ComplexAspect.GetValue <T>(propertyName));
 }