自动生成编号(B开头后跟6位,数据库查询不重复)

 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 }

 

posted @ 2018-01-09 16:41  敲代码带  阅读(1519)  评论(3编辑  收藏  举报