我想按如下方式将数据行值转换为sring。
userGuid = dr["user_guid"].ToString();
它可能包含Guid或null(不为空字符串)。如果它包含null,则表示异常。
我该如何克服这个问题。
答案 0 :(得分:2)
我想您正在从数据读取器中读取数据。
您将必须检查该值是否为null或DBNull,然后才能调用字符串方法。
string user_guid = dr["user_guid"] != DBNull.Value && dr["user_guid"] != null ? dr["user_guid"].ToString() : null ;
希望这会有所帮助。
答案 1 :(得分:1)
if (dr[user_guid"] != null) {
//whatever you want to do
} else {
//handle the null value in some way
}
或者,
dr["user_guid"]?.ToString();
?是所谓的“零安全导航器”。
答案 2 :(得分:0)
这可能是有用的,是许多方法之一
userGuid = dr["user_guid"]?.ToString()?? "Default Value";
请根据您的应用逻辑,以您认为合适的方式替换“默认值”。
答案 3 :(得分:-1)
也许是这样:
userGuid = dr["user_guid"].ToString() ?? throw new Exception();