How to generate ALPHANUMERIC Coupon Code in C#? 
我有一个生成Coupon Code的方法。有人能帮助/建议生成ALPHANUMERIC CODE?
方法如下:
| 12
 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代码的长度。
| 12
 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()); | 
		
		
- 谢谢@kumod singh,它工作了..:)
- 欢迎,谢哈!!!!
 
	 
只需洗牌阿尔法下注的顺序,并采取您需要的字符数。
| 12
 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());
    } | 
		
		
- 1)虽然目前执行的NewGuid是随机的,但不能保证是随机的。2)为什么要防止重复字符?
- 洗牌字符数组只是一件棘手的事情。正如我所知,guid使用伪随机算法,当我们谈论随机序列时,这实际上是非常好的。