public static void SetValue <T>(OneToOneAssociation property, NakedObject target, Naked proposed) { object valueHolder = property.get(target).getObject(); MethodInfo m = valueHolder.GetType().GetMethod("setValue", new[] { typeof(T) }); m.Invoke(valueHolder, new[] { proposed.getObject() }); }
private void SetAssociation(OneToOneAssociation property, NakedObject target, Naked proposed) { if (proposed is NakedObject) { property.setAssociation(target, (NakedObject)proposed); } else { MethodInfo m = GetType().GetMethod("SetValue").MakeGenericMethod(proposed.getObject().GetType()); m.Invoke(null, new object[] { property, target, proposed }); } }