数据库中数据类型是decimal,
怎么把文本框中的值转化为decimal格式存入数据库?

解决方案 »

  1.   

    public static decimal ToDecimal (
    string value,
    IFormatProvider provider
    )
      

  2.   

    decimal dNum = Convert.ToDecimal(textBox1.Text);
      

  3.   

    textBox.Value as ToDecimal
    这种转换最安全
      

  4.   

    也可使用decimal.Parse(string s)转换
      

  5.   

    谢谢,可是说缺少找不到类型或命名空间名称“ToDecimal”(是否缺少 using 指令或程序集引用?)
      

  6.   


    用Convert.ToDecimal()方法,注意转换中数据出现丢失,会抛出异常,所以要try,catch.
      

  7.   

    恩,这次可以了,谢谢大家,真的很感谢!
    我用的是:decimal dNum = Convert.ToDecimal(textBox1.Text);
      

  8.   

    如果文本框的值是基元类型,并且值是decimal,可以这样:(decimal)txt.value这样效率是最高的,因为编译器直接产生IL指令,不会调用其它什么方法.
      

  9.   

    你改成下面这种格式,应该不会有错的啊!
    decimal number=Convert.ToDecimal(textBox1.Text.Trim().ToString());
      

  10.   

    decimal number=Convert.ToDecimal(textBox1.Text.Trim().ToString());
    这种方法不行吗啡
      

  11.   

    decimal dNum = Convert.ToDecimal(textBox1.Text);这种方法你需要做Try -- Catch ---,因为你非常有可能输入的不是数字,如果不是数字在这里就要出错。还有,你不要做textBox1.Text.Trim().ToString(),因为如果textBox1.Text == null的时候也会出异常;建议楼主对textBox1.Text进行一下数字判断,如果不是数字就退出过程;这样就比较安全了。
      

  12.   

    存入数据库看你用什么方式:
    1.   如果用 Sql, 则 对应此字段值不用 "" 起来;
         string strSql="Insert Into table1 (FieldName ) Select {0} ";
         而不是:
         string strSql="Insert Into table1 (FieldName ) Select \"{0}\" ";2.   如果用参数, 直接给值就行.  parm[0].Value=this.textBox1.Text.Trim();