在我们做项目中会经常遇到编码的问题,这些编码都是唯一的,它是一条数据的标识。
话不多说,下面我们来看代码。
我的编码自增是跟数据库结合在一起的。
思路:
第一步:查询数据库里面的是否存在编码,不存在就初始化一个编码”YG00001”,如果存在就获取最后一条数据的编码,因为最后的那一条编码是最大的。
例如:里面存在3条数据。 YG00001 YG00002 YG00003
那我获取的就是YG00003。
然后调用这个方法进行截取Substring(2,5);
这个方法 第一个参数是截取的开始位置的索引
第二个参数从开始位置起,要截取的字符长度
那么我截取到的字符就是”00003”。我们要给他加一,但这样是加不了的。
但用Convert.ToInt32()这个方法,把它的类型转为int类型,就可以把前面的多余的0给去掉了。
然后给它进行加1,转回字符串类型,最后通过for循环拼接0,拼接成00004。
最后在前面加上”YG”的字符。就可以得到加一的编码了”YG00004”。
但是这个编码的自增还是有限制的,很明显可以看出到达”YG99999”是它的极限,
如果加上时间就不一样了,因为时间是唯一的。
希望能帮到大家。