我有一個對象列表(它們的類型未提前未知)。下面的例子顯示了硬編碼值,但是我的實際代碼通過從CSV文件中讀取來填充參數列表。然後我想將這個參數列表傳遞給請求某些參數的典型方法。所以我將元素轉換爲所需的類型,如圖所示。我得到錯誤:將一個對象變量傳遞給方法 - 指定的轉換無效
Specified cast is not valid
當在運行時調用該方法。我應該如何去做到這一點?
var args = new List<object>();
args.Add(5495);
args.Add("String1");
args.Add(10133);
args.Add("String2");
result = request.GetCustomer((long) args[0], (string) args[1], (int) args[2], (string) args[3]);
該錯誤明確告訴你爲什麼你不能執行轉換,包括對象的實際類型以及要轉換的對象。如果您希望在運行時不失敗,您需要將對象轉換爲* actual *類型。 – Servy
好吧,一個好的開始將是圍繞這個和一個計數的try catch塊,以便您可以看到csv中的哪一行是罪魁禍首。 – Kell
@Kell一個'try' /'catch'塊只會掩蓋問題。他已經可以看到這個錯誤,他只需要修正他的代碼中的錯誤。 – Servy