关于随机:如何在C中生成字母数字优惠券代码?

How to generate ALPHANUMERIC Coupon Code in C#?

本问题已经有最佳答案,请猛点这里访问。

我有一个生成Coupon Code的方法。有人能帮助/建议生成ALPHANUMERIC CODE

方法如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
public string CouponGenerator(int length)
    {
        var sb = new StringBuilder();
        for (var i = 0; i < length; i++)
        {
            var ch = Convert.ToChar(Convert.ToInt32(Math.Floor(26 * _random.NextDouble() + 65)));

            sb.Append(ch);
        }

        return sb.ToString();
    }
    private static readonly Random _random = new Random();

例子:

当长度设置为8时,UZWKXQML

但它需要类似于U6WK8Q2L的东西,即字母数字代码。


您可以更改Coupan代码的长度。

1
2
3
4
5
6
 var chars ="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
    var random = new Random();
    var result = new string(
        Enumerable.Repeat(chars, 8)
                  .Select(s => s[random.Next(s.Length)])
                  .ToArray());


只需洗牌阿尔法下注的顺序,并采取您需要的字符数。

1
2
3
4
5
6
   public string CouponGenerator(int length, char[] alphaNumSeed)
    {
        var coupon = alphaNumSeed.OrderBy(o => Guid.NewGuid()).Take(length);

        return new string(coupon.ToArray());
    }