double WdTemp = 99999;
WdTemp = Convert.ToDouble   (mytable.Rows[row]["Wd2m"]);if (WdTemp > 337.5 && WdTemp < 22.5)
{
    Wd2m = "北京";
}
就这四行简单的代码,WdTemp 为5.0,为何没有进入if判断?

解决方案 »

  1.   

    报错了,肯定!强制类型转换出错了吧,打个断电或者try catch一下看看
      

  2.   

    mytable.Rows[row]["Wd2m"]加一个.ToString()试试
      

  3.   

    你太有才了 WdTemp 无论是哪个值也都进不去...
      

  4.   

    呵呵,lz你见过大于337.5而且还小于22.5的数么?
    答案见ls的!
      

  5.   

    if (WdTemp > 337.5 && WdTemp < 22.5)
    {
       Wd2m = "北京";
    }没有交集。  &&  ->  ||   5.0就可以进去了
      

  6.   

    你的条件是(WdTemp > 337.5 && WdTemp < 22.5),也就是WdTemp既要小于22.5,又要大于337.5
    这就意味着,是一个空的集合,所以WdTemp=5.0,当然不会进入if判断了
    把你的条件改一下:
    (WdTemp > 337.5 || WdTemp < 22.5)
      

  7.   

    if (WdTemp > 337.5 && WdTemp < 22.5)
    写错了,任何语句都进不去。
    改成 ||
      

  8.   

    O MY GOD  被这么多人鄙视,囧了个囧,事情太多糊涂了,哈哈,谢谢各位
      

  9.   

    2楼说的是,你要把数据库里面的值给转换一下。
    mytable.Rows[row]["Wd2m"].ToString()试试