vb.net – Visual Studio 2005 – 什么都没检查
发布时间:2020-12-17 07:10:33 所属栏目:百科 来源:网络整理
导读:你能告诉我为什么这行代码会出错: – “对象引用没有设置为对象的实例” searchstr = IIf( Not searchstr Is Nothing AndAlso searchstr.Length 0,searchstr.Replace("Desig_id","designation_id"),"") 您还可以提供替代方法来进行此类验证吗? 解决方法 II
你能告诉我为什么这行代码会出错: – “对象引用没有设置为对象的实例”
searchstr = IIf( Not searchstr Is Nothing AndAlso searchstr.Length > 0,searchstr.Replace("Desig_id","designation_id"),"") 您还可以提供替代方法来进行此类验证吗? 解决方法
IIf函数表现不像你的想法.它不是一个三元风格的运算符,而是C#或C#.它只是一个普通的函数,这意味着在将它传递给IIf之前,你的条件检查和searchstr.Replace都要进行评估.如果searchstr为null,则searchstr.Replace(…)将抛出NullReferenceException,即使您预计根本不会调用它.
在VS2008中添加了If运算符以支持此操作,但如果您在2005年,则必须将其扩展为If / Else块: If Not searchstr Is Nothing AndAlso searchstr.Length > 0 Then searchstr = searchstr.Replace("Desig_id","designation_id") Else searchstr = "" End If (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |