黑马程序员技术交流社区

标题: 如何解决可恶的null,还有啥不足大家补充吧。 [打印本页]

作者: 阿磊-_-    时间: 2012-1-12 16:50
标题: 如何解决可恶的null,还有啥不足大家补充吧。
首先声明我也是看传至视频知道的,之前总是问问题,回答问题。殊不知原来分享问题一样可以呵呵。只讲讲思路。
C#和数据库由于对bool  int  以及 datatime 等类型的null判断不一样。所以出现了一个问题就 就是如何处理null。    首先一个实体类中建字段的时候把以上类型用可空类型  如: int? bool? 等。然后我们就可以给此字段赋可为null的值了。  然后,当我们从数据库中(取值)的时候,null值也不怕了。最好的方法就是用三元运算符 例如:model.Id = row.IsNull("Id")?null:(Int32?)row["Id"]        。这样我们就可以用 HasValue 判断它是否为null。
当我们向数据库中(插入数据,改)的时候。例如:model.Id == null ? (object)DBNull.Value : model.Id      用这种判断方式,就可以完美的解决数据库中null 与c#中null的区别。如果你写成一个方法,使用起来会更方便
作者: 阿磊-_-    时间: 2012-1-12 16:58
model.Id = row.IsNull("Id") ? null:(Int32?)row["Id"]    小孩头那句话是 这句话




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2