自动生成编号(B开头后跟6位,数据库查询不重复)
程序员文章站
2022-03-29 13:40:30
1 private string GetAccountNo() 2 { 3 try 4 { 5 string shortName="B"; 6 string latestAccountNO = shortName + "000001"; ... ......
1 private string GetAccountNo() 2 { 3 try 4 { 5 string shortName="B"; 6 string latestAccountNO = shortName + "000001";
//查询数据库 7位且包含“B” 7 var templist = twRep.GetAll().Where(x => x.AccountNo.Length == 7 && x.AccountNo.Contains(shortName)).OrderByDescending(x => x.AccountNo).ToList(); 8 if (templist.Count>0) 9 {
//取第一个 10 string latestNO = templist.FirstOrDefault().AccountNo; 11 12 //截取后六位 13 latestAccountNO = latestNO.Substring(1, 6);
//判断是否能转换整形 14 int iNewNo = 0; 15 int.TryParse(latestAccountNO,out iNewNo);
16 if (iNewNo > 0) 17 { 18 latestAccountNO = shortName + (iNewNo + 1).ToString("000000"); 19 } 20 else 21 { 22 latestAccountNO = shortName + "000001"; 23 } 24 25 } 26 return latestAccountNO; 27 } 28 catch (Exception ex) 29 {
//错误信息日志方法 30 LogHelper.WriteLog(ex.Message, ex); 31 return ""; 32 } 33 34 }