dr["shop_books.bookpic"].ToString().Trim() != "" 呢?

解决方案 »

  1.   

    判断
    System.DBNull.Value != dr["shop_books.bookpic"]
    如果你的字段没有not null约束的话
      

  2.   

    dr["shop_books.bookpic"]空的吧,sql语句都是空的
      

  3.   

    dr["shop_books.bookpic"].ToString().Trim() != ""  这样改,还是不行,
      

  4.   

    dr["shop_books.bookpic"]有可能为null
    此时ToString()就会报错改为
    if (dr["shop_books.bookpic"] != null)
      

  5.   

    dr["shop_books.bookpic"]为null会报错?!!!
    这是DBNull不是null~~~,DBNull.ToString()为一""值!!!
      

  6.   

    两个条件都加上。
      if(dr["shop_books.bookpic"] != null || dr["shop_books.bookpic"].ToString().Trim() != "")
      

  7.   

    两个条件都加上。
    if(dr["shop_books.bookpic"].ToString() != null || dr["shop_books.bookpic"].ToString().Trim() != "")
      

  8.   

    就是判断也要这样~~
    if(Convert.IsDBNull(dr[""])){...};
      

  9.   

    dr[bookpic"].ToString().Trim() != ""这样改,就行了,各位朋友,为什么啊?不明白shop_books是表名,我连接的几个表,肯定要带shop_books以区别啊,
      

  10.   

    以前也遇到相识问题,觉得使用DBNUll来判断比较好。
      

  11.   

    dr["shop_books.bookpic"].ToString().Trim() != null
    应该改成这样才对吧
      

  12.   

    bool b = dr.IsDBNull(0);
      

  13.   

    一个经典的BUG,我估计原因可能是你的dr["shop_books.bookpic"]本身就是一个null,所以根本无法判断延伸下去Tostring是否为空。应该先判断dr["shop_books.bookpic"]不是等于null。然后判断dr["shop_books.bookpic"].Tostring()
      

  14.   

    为啥不再加一个,就占点地方dr["shop_books.bookpic"].ToString() != "" || dr["shop_books.bookpic"].ToString() != null
      

  15.   

    dr["shop_books.bookpic"]为null的话,调用ToString肯定出错
      

  16.   

    tryif(dr["shop_books.bookpic"].ToString().tolower() != "null"&&dr["shop_books.bookpic"].ToString() != "" )
      

  17.   


    dr["shop_books.bookpic"].ToString() != ""
    换为
    System.DBNull.Value != dr["shop_books.bookpic"]&&dr["shop_books.bookpic"].ToString() != ""
    就可以了
      

  18.   

    dr[bookpic"].ToString().Trim().Equals(null)||dr[bookpic"].ToString().Trim().Equals("")""这样改,就行了,返回的数据只有列名,不会包含表名的