我寫代碼,一個對象轉換到另一個使用反射...可空屬性複製到一個非空的版本使用反射
這是在進步,但我認爲這將歸結到我們相信以下這兩個屬性具有相同的類型:
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));
}
然而我有更多的問題,源類型可能是可空,目標類型沒有。例如Nullable<int>
=>int
。在這種情況下,我需要確保它仍然有效,並執行了一些合理的行爲,例如NOP或設置該類型的默認值。
可能這是什麼樣的?
也許我只是瘋狂,但知道它似乎是它可以以更好的方式來解決表達式樹的根本問題 –
我不明白,請隨時提供一個答案! –
好,我的意思是,你能解釋一下你想要什麼解決的,你沒怎麼想解決什麼是我們未知的...... –