首页 新闻 会员 周边 捐助

请问我怎么修改一下这段代码?

0
悬赏园豆:10 [已解决问题] 解决于 2009-07-17 12:40

decimal Wd = Convert.ToDecimal(txtWd.Text.ToString()) != 0 ? Convert.ToDecimal(txtWd.Text) : 0.00;

DateTime time = Convert.ToDateTime(txtTime.Text) !=null ? Convert.ToDateTime(txtTime.Text): null;

这样之间没有隐式转换!可我想当不为空的时候就取当前页面输入的值,为空的话就直接插进数据库的值为空!应该怎么修改好呢?谢谢大家了

LoveO(∩_∩)O的主页 LoveO(∩_∩)O | 初学一级 | 园豆:55
提问于:2009-07-11 09:49
< >
分享
最佳答案
0

试用一下:

http://www.cnblogs.com/insus/articles/1424094.html

sql中很多不能存null的字段,可以用上面的函数转换一下。如果时间类型,也是可以存null的。

Insus.NET | 小虾三级 |园豆:1132 | 2009-07-12 12:34
其他回答(3)
0

数据库空值是DbNull.Value, DateTime是值类型,不能够为null

decimal Wd = txtWd.Text!="" ? Convert.ToDecimal(txtWd.Text) : 0.00;//请自行通过验证控件判断是否为合法数字

peterzb | 园豆:861 (小虾三级) | 2009-07-11 10:24
0

最好用这个,易于处理:

decimal txtWdResult;
decimal.TryParse(txtWd.Text.ToString(), out txtWdResult);
 DateTime dt ;
 DateTime.TryParse(txtTime.Text.ToString(), out dt);

winzheng | 园豆:8797 (大侠五级) | 2009-07-11 12:53
0

TryParse

LoujaDy | 园豆:908 (小虾三级) | 2009-07-12 02:18
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册