C#学习教程:无法确定条件表达式的类型,因为'string'和'System.DBNull'之间没有隐式转换param7[1].Value=tbLastName.Text.Length>0之间没有隐式转换吗?tbLastName.Text:DBNull.Value;为什么这是不可能的,有什么建议可以尝试吗?如果有20个参数,/else是不可能的。问题是(如错误消息所示)条件表达式在两个分支上需要相同的类型,否则需要从一种类型到另一种类型的隐式转换。在你的情况下,没有一个,所以你得到了错误。快速修复是将其中一个值转换为(object)(这很好,因为DbParameter.Value无论如何都是对象类型。)所以这对你有用:,因为'之间没有隐式转换字符串”和“System.DBNull”。如果对大家有用,需要了解更多C#学习教程,希望大家多多关注——param7[1].Value=tbLastName.Text.Length>0?tbLastName.Text:(object)DBNull.Value;本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
