自动生成编号

生成编号首先需要查询出数据库已经存在的编号

from tbEveryday in myModel.PW_Everyday
orderby tbEveryday.EverydayNumber
select tbEveryday

我的编号格式为AZ20181212001(AZ + 8位数日期 + 3位数编号),先获取数据库最后的编号后3位数转为int类型,然后加1之后转为字符串类型,利用for循环在数字前拼接0为三位数

int count = listNumber.Count;
PW_Everyday modelNumber = listNumber[count - 1];
int intNumber = Convert.ToInt32(modelNumber.EverydayNumber.Substring(10, 3));
intNumber++;
Number = intNumber.ToString();
for (int i = 0; i < 3; i++)
 {
      Number = Number.Length < 3 ? "0" + Number : Number;
 }

生成编号的方法

 public ActionResult Number()
        {
            string Number = "";
            string data = DateTime.Now.ToString("yyyyMMdd");
            var listNumber = (from tbEveryday in myModel.PW_Everyday
                              orderby tbEveryday.EverydayNumber
                              select tbEveryday).ToList();
            if (listNumber.Count > 0)
            {
                int count = listNumber.Count;
                PW_Everyday modelNumber = listNumber[count - 1];
                int intNumber = Convert.ToInt32(modelNumber.EverydayNumber.Substring(10, 3));
                intNumber++;
                Number = intNumber.ToString();
                for (int i = 0; i < 3; i++)
                {
                    Number = Number.Length < 3 ? "0" + Number : Number;
                }
                Number =  "AZ" + data + Number;
            }
            else
            {
                Number = "AZ" + data + "001";
            }
            return Json(Number, JsonRequestBehavior.AllowGet);
        }

猜你喜欢

转载自blog.csdn.net/weixin_44547599/article/details/86714386