我从数据库读出数据后放在了datatable里,现在用datatablereader读数据,其中有的数据类型是decimal(3,1),想保存到一个float类型的变量里,怎么读?
谢谢!

解决方案 »

  1.   

            public static float ObjectToFloat(object o, float d)
            {
                if (o == null)
                {
                    return d;
                }
                float f = 0;
                if (float.TryParse(o.ToString(), out f))
                {
                    return f;
                }
                else
                {
                    return d;
                }
            }
      

  2.   

    直接强制转换不行嘛??
    float f = float.Parse(reader["你decimal的数据类型"].ToString());
    或是像萝卜上面写的那样,专门写一个方法来调用,也可以的。
      

  3.   

    也可以用Convert.ToSingle直接转化:float f=Convert.ToSingle(rReader["MyField"]);这个比Float.Parse(string)效率要高,