为了账号安全,请及时绑定邮箱和手机立即绑定

如何强制设定自定义类的属性都为null

如何强制设定自定义类的属性都为null

C#
倚天杖 2018-07-26 19:09:10
namespace xx{public class UniColumn{//构造函数public UniColumn(){ }//自定义属性public string ColumnId {get;set;} public int StateId {get;set;} public bool IsOpen {get;set;}public DateTime DateCreated {get;set;} }}2、如上面自定义的类,New一个实例。UniColumn u  = new UniColumn();其中,只有u.ColumnId 的值为null,其他u.StateId,u.IsOpen,u.DateCreated都有默认值。3、请问在New一个新的实例后,怎么可以保证所有属性的值都为Null。例如我要更新数据库中的部分字段,就有默认的int中的0, bool中FALSE等默认值影响操作。UniColumn a = new UniColumn(); a.ColumnName = "精华图片";bool b =UniColumnManager.UpdateColumn("1", a);
查看完整描述

3 回答

?
互换的青春

TA贡献1797条经验 获得超6个赞

这里有什么问题么?你db中对应字段允许为空不就可以了么?


如果我没理解错的话,这个对象除了承载数据外,还会用于数据变更查询的信息携带者。但这种东西不是当某个属性为null就可以认为是排除在db操作外的,这样的判断不充分,而且有些时候会把你带坑里面去。

你要实现的功能最好能用ef这样的orm来做,其判断思路为在你变更实体时记录你变更的操作,这样可以在最后回写db时感知到。


查看完整回答
反对 回复 2018-07-29
?
跃然一笑

TA贡献1826条经验 获得超6个赞

null也是默认值,引用类型和值类型,给你一个眼神自己去领会

查看完整回答
反对 回复 2018-07-29
?
一只名叫tom的猫

TA贡献1906条经验 获得超3个赞

int类型数据只能是数字,bool类型只能是true/fasle。保证所有属性的值都为NULL,你这是要改它们祖宗的姓啊

查看完整回答
反对 回复 2018-07-29
  • 3 回答
  • 0 关注
  • 754 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信