且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何使用varchar设置自动生成的代码?

更新时间:2023-09-27 20:39:52

你可以使用像



这样的东西
  int  codeLength =  3 ; 
var chars = ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789跨度>;
var random = new Random();
string result = new string
Enumerable.Repeat(chars,codeLength)
。选择(s = > s [random.Next(s.Length)] )
.ToArray());

// 插入' - '特殊字符在第2位,你可以改变你的方式想要
result = result.Insert( 2 - 跨度>);


Hello,

In my project i want to set autogenerated code, like EB-1,EA-1. So how to set that any idea? I can set only in numeric that code is as bellow:

public string autoGenerateemployeecode()
    {

        var countFirstServiceProvider = 101;
        string Type_ID = Convert.ToString(bindApplicantTypeID());
        dt.OpenCon();
        try
        {
            string queryCount = "select count(*) from master_applicant where MA_App_Code='" +Type_ID+ "'";
            decimal firstServiceProvider = Convert.ToDecimal(dt.ExecuteScalar(queryCount));
            if (firstServiceProvider > 0)
            {
                SqlDataReader dr = dt.ExecuteReader("select max(convert(numeric,ma_app_code))+1 as ma_app_code from master_applicant  where MA_Appl_type_id='" + Type_ID + "'");
                while (dr.Read())
                {
                    txtEmpCode.Text = dr[0].ToString();
                }
            }
            else
            {
                txtEmpCode.Text = countFirstServiceProvider.ToString();
            }
        }
        catch (Exception ex)
        {
        }
        finally
        {
            dt.Dispose();
        }
        return (txtEmpCode.Text);
    }

You can use something like

int codeLength = 3;
            var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
            var random = new Random();
            string result = new string(
                Enumerable.Repeat(chars, codeLength)
                          .Select(s => s[random.Next(s.Length)])
                          .ToArray());

            //insert '-' special char at 2nd position, you can change the way you want
            result = result.Insert(2, "-");