相关疑难解决方法(0)

无法将类型为"System.DBNull"的对象强制转换为"System.String"

我的应用程序中出现上述错误.这是原始代码

public string GetCustomerNumber(Guid id)
{
     string accountNumber = 
          (string)DBSqlHelperFactory.ExecuteScalar(connectionStringSplendidmyApp, 
                          CommandType.StoredProcedure, 
                          "GetCustomerNumber", 
                          new SqlParameter("@id", id));
     return accountNumber.ToString();
 }
Run Code Online (Sandbox Code Playgroud)

我替换了

public string GetCustomerNumber(Guid id)
{
   object accountNumber =  
          (object)DBSqlHelperFactory.ExecuteScalar(connectionStringSplendidCRM, 
                                CommandType.StoredProcedure, 
                                "spx_GetCustomerNumber", 
                                new SqlParameter("@id", id));
    if (accountNumber is System.DBNull)
    {
       return string.Empty;
    }
    else
    {
       return accountNumber.ToString();
    }
}
Run Code Online (Sandbox Code Playgroud)

这有更好的方法吗?

c# database asp.net null

99
推荐指数
4
解决办法
18万
查看次数

标签 统计

asp.net ×1

c# ×1

database ×1

null ×1