我正在转换使用SQL Server的遗留应用程序,我想将petapoco用于我的数据访问层。
表定义包含许多具有DEFAULT值的列。
我希望我的DAL在插入新记录时处理默认值。
不幸的是,使用ResultColumn
属性不是解决方案,因为当我使用UPDATE和INSERT时会丢弃该列。 DEFAULT值与读取计算的字段不完全相同。
有办法解决这个问题吗?
答案 0 :(得分:7)
目前没有办法,因为如果将值设置为null,则会将值插入/更新到DBNull。
可能必须对代码进行更改才能拥有新属性,例如。 [OmitColumnIfDefaultValue]
然后,如果该列的值等于默认CLR值,那么我们可以省略insert语句中的列。