猿问

关于.NET三层架构,数据库NULL处理的问题

刚进入公司的一个小菜,工作9个月,刚适应公司的环境。

做了一个小项目,觉得有点收获,别的不说,起码快捷键记得挺熟了。

开发的时候没有划分架构,项目组长也没考虑这么多,做到最后他们的代码跟拉面差不多了。

我都懒得看。好歹我知道没事重构下,但是没有划分好的层,导致现在我连我自己的代码都不乐意看了,所以没事学习学习,看看大家用了这么久的三层架构。拿出经典的例子来:Petshop。

我看了一遍,有一个问题,希望得到帮助!

在SQLServerDAL 层,有基本的操作,例如GET操作。我要把数据库的一行提取出来,生成相应的Model对象,但是对于NULL值的话,如何创建这个对象呢?

如果遇到NULL立马改成DBNull.Value的话,值就是""不是NULL了,然后我在对这个对象进行Update的话,原来的NULL就成了""了。不要问我为什么要保留NULL,因为我们做的Schedule Server判断字符串为空时,都是根据Column为NULL判断了,没办法。

希望大家帮我下,感激不尽!


慕尼黑5688855
浏览 745回答 2
2回答

慕无忌1623718

一般这问题,可能是在建立实体(Model)时,对值类型要加?号,如:publick int? ID  这样的话该值默认为null,而不是0。推荐使用CYQ.Data 数据框架,能节省你70%以上代码量。
随时随地看视频慕课网APP
我要回答