Ich bin das Schreiben von Code ein Objekt in eine andere mithilfe von Reflektion zu verwandeln ...eine Nullable-Eigenschaft auf einen Nicht-Nullable Version mit Reflection
Es ist im Gange, aber ich denke, es wäre einkochen dem folgenden, wo wir vertrauen beide Eigenschaften haben die gleiche Art:
private void CopyPropertyValue(object source, string sourcePropertyName, object target, string targetPropertyName)
{
PropertyInfo sourceProperty = source.GetType().GetProperty(sourcePropertyName);
PropertyInfo targetProperty = target.GetType().GetProperty(targetPropertyName);
targetProperty.SetValue(target, sourceProperty.GetValue(source));
}
jedoch ich das zusätzliche Problem haben, dass die Quelle Typ Null sein könnte und den Zieltyp nicht. z.B. Nullable<int>
=>int
. In diesem Fall muss ich sicherstellen, dass es immer noch funktioniert und ein sinnvolles Verhalten z. NOP oder setzen Sie den Standardwert für diesen Typ.
Wie könnte das aussehen?
Vielleicht bin ich nur verrückt, aber das zugrunde liegende Problem zu wissen, es scheint, als könnte es Ausdruck Bäume in einer besseren Weise gelöst werden –
Ich folge nicht, bitte zögern Sie nicht, eine Antwort zu bieten! –
nun ich meine, dass Sie erklären könnten, was Sie zu lösen versuchen, nicht, wie Sie lösen wollen, was uns unbekannt ist ... –