這使我發瘋。也許我錯過了一些明顯的東西?fieldInfo.SetValue拋出ArgumentException「對象類型不能轉換爲目標類型」
fieldInfo.FieldType是正確的(DateTime),我正在應用的值也是DateTime。
for(int i=0; i<objectArray.Length; i++)
{
FieldInfo destinationField = GetFieldInfo(i);
object destinationValue = objectArray[i];
destinationField.SetValue(this, destinationValue);
}
編輯:即使我設置destinationValue的字面日期時間(DateTime.Now),我仍然得到例外!
你可以發佈一些有問題的代碼嗎? – Kane 2009-06-05 13:27:12
您的代碼無法編譯,因爲GetFieldInfo([i])不是有效的C#。你可以顯示真實的代碼,也可以在SetValue()調用之前添加以下行:Console.WriteLine(destinationField.FieldType +「,」+ destinationValue.GetType()) – 2009-06-05 13:36:34
@activa ..感謝您的迴應。我認爲最好發佈一個簡化版本。您的Console.WriteLine將返回System.DateTime,對象 – 2009-06-05 13:40:58