我有这段代码:
var answer = (string)parameters[0].Value;
它失败了一条消息:
Message = "Unable to cast object of type 'System.DBNull' to type 'System.String'."
即使Value为null并且停止异常,是否有某种方法可以进行转换?
答案 0 :(得分:2)
var answer = ""
if(parameters[0].Value != DBNull.Value) {
answer = (string)parameters[0].Value
}
或更短:
var answer = parameters[0].Value != DBNull.Value ? (string)parameters[0].Value : ""
你的空结果不是null,它是DBNull.Value,因为你的参数似乎来自DB相关的东西;)
P.S。:我手边没有视觉工作室来测试它,但它应该可以工作;)