问题描述
可能这问题比较偏门。之前旧的程序中自定义了一个类型叫hole,有一个属性是id,类型为int。现在因为业务的扩展需要改为guid。为了不影响系统现在的使用,我增加了一个新字段叫idnew,类型为guid。之前调用id的代码非常多,主要用于判断id是否相等。我想请问下有没有可能重写id的==运算符。当idnew有值时,使用idnew来进行比较。而idnew为null或newguid时,仍旧使用id进行比较(为了方便新旧两套系统的切换,可能需要同时使用一段时间这两个不同类型的id)谢谢
解决方案
解决方案二:
什么叫“id的==运算符”?你的这个==运算符是id独有的,程序中其它的int不使用吗?
解决方案三:
你的idnew设计既不符合主键的最基本概念,又想当作未来的主键用,这种idnew能堪当什么大任呢?最起码这个idnew不可能为null,才可能兼容地升级系统。不能胡乱就把基本概念给跑偏了。
时间: 2024-10-22 20:25:16