-- 作者:xuebai
-- 发布时间:2012/10/13 12:11:00
-- 提示调用目标异常
原来一直正常使用的代码,今天却提示出错,说不存在“行驶里程”的列,但这个列明明是有的,这是什么原因?
出错提示:
.NET Framework 版本:2.0.50727.5456 Foxtable 版本:2012.9.29.1 错误所在事件:表,评估,DataColChanged 详细错误信息: System.Reflection.TargetInvocationException: 调用的目标发生了异常。 ---> System.ArgumentException: 列“行驶里程”不属于表 折旧。 在 System.Data.DataRow.GetDataColumn(String columnName) 在 System.Data.DataRow.IsNull(String columnName) 在 Foxtable.DataRow.get_IsNull(String O0110O1OOl) 在 UserCode.DataColChanged(DataColEventArgs e) --- 内部异常堆栈跟踪的结尾 --- 在 System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) 在 System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) 在 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) 在 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) 在 Foxtable.DataTable.OOll011lllOOlOO1ll1l0100(Object OO10O0, DataColumnChangeEventArgs O)
表结构:
此主题相关图片如下:捕获1.jpg
该段的代码:
……
If dr.Isnull("行驶里程") OrElse dr.Isnull("报废里程") Then dr("R2") = Nothing Else If dr("行驶里程")>dr("报废里程") Then dr("R2")=0 Else dr("R2")=dr("计算原值")*(1-dr("行驶里程")/dr("报废里程")) End If End If
|