0
为您的一个RPA机器人编写C#函数,我得到一个'System.InvalidCastException'。在VS 2015中编译相同的代码,不会发生异常。Object to byte - System.InvalidCastException
代码:
try
{
byte[] IColByte = new byte[4]{
(byte)ICol.Rows[0]["B"],
(byte)ICol.Rows[0]["G"],
(byte)ICol.Rows[0]["R"],
(byte)ICol.Rows[0]["A"]};
}
catch(System.Exception e)
{
throw new System.Exception("ERROR: Unable to create color byte array!" +
System.Environment.NewLine + e.Message);
}
ICOL是这样定义的类型System.Data.DataTable:
public static System.Data.DataTable GenerateColor(byte B, byte G, byte R, byte A)
{
System.Data.DataTable dt = new System.Data.DataTable();
dt.Columns.Add(new System.Data.DataColumn("B", typeof(byte)));
dt.Columns.Add(new System.Data.DataColumn("G", typeof(byte)));
dt.Columns.Add(new System.Data.DataColumn("R", typeof(byte)));
dt.Columns.Add(new System.Data.DataColumn("A", typeof(byte)));
dt.Rows.Add(dt.NewRow());
dt.Rows[0]["B"] = B;
dt.Rows[0]["G"] = G;
dt.Rows[0]["R"] = R;
dt.Rows[0]["A"] = A;
return dt;
}
我不明白,什么是错用此代码?即使如果警告级别非常低...
包括堆栈跟踪。在运行时和编译时间错误之间也要弄清楚 – Nkosi
您可以在引发异常时使用调试器来检查acutal值。 –
你在运行时得到这个异常吗? – Darkonekt