C#生成唯一订单号
今天系統出了一個問題,發現生成的訂單號存在重復的情況了,這是要命的bug,不馬上解決,就會有投訴了
經過改進后的代碼我先簡單的放一下,后面在慢慢的寫清楚整個流程
string key = "";string[] yCode = { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J" };Random ran = new Random();int randKey = ran.Next(0, 99);//獲取微秒 ( 底層 api )double l = (DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0)).TotalSeconds;string unix = Convert.ToString((System.DateTime.Now.Ticks - TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1, 0, 0, 0, 0)).Ticks) / 1000);// key = yCode[DateTime.Now.Year - 2011] + Convert.ToString(DateTime.Now.Month, 16).ToUpper() + DateTime.Now.Day + (unix.Substring(unix.Length - 6)) + l.ToString().Substring(0, 5) + randKey.ToString().PadLeft(2, '0');key = "ST" + Convert.ToString(DateTime.Now.Month, 16).ToUpper() + DateTime.Now.Day + (unix.Substring(unix.Length - 6)) + l.ToString().Substring(0, 5) + randKey.ToString().PadLeft(2, '0');創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎
總結
- 上一篇: 生产性企业CO部分月结流程及系统步骤
- 下一篇: 为EF DbContext生成的实体添加