如果字符串为空,如何避免 Tostring 异常?

How to avoid Tostring exception if string is null?

我想将数据行值转换成sring如下。

userGuid = dr["user_guid"].ToString();

它可能包含 Guid 或 null(不是空字符串)。如果它包含 null 我得到异常。

我怎样才能克服这个..

if (dr[user_guid"] != null) {
    //whatever you want to do
} else {
    //handle the null value in some way
}

或者,

dr["user_guid"]?.ToString();

那个?就是所谓的"null-safe navigator".

也许是这样的: userGuid = dr["user_guid"].ToString() ?? throw new Exception();

我猜你正在读取数据 reader。

您必须检查该值是否为 null 或 DBNull,然后您可以调用字符串方法。

    string user_guid = dr["user_guid"] != DBNull.Value && dr["user_guid"] != null ? dr["user_guid"].ToString() : null ; 

希望这对您有所帮助。

这可能很有用,是众多方法之一

 userGuid  = dr["user_guid"]?.ToString()?? "Default Value";

请根据您的应用程序逻辑将 "Default Value" 替换为您认为合适的内容。