如何生成唯 一值,搞过大用户在线的,出来说一下。。。。。。。。。。。。。。。。。。。。

xghabc 2013-06-01 10:43:06
Guid.NewGuid() 和 DateTime.Now.Ticks 生成的值在多用户在线的情况,会出现重复值,己经发生这样的情况了。。
就是多用户登陆的情况,生成相同值。。。。。。

所以,求一个,能生成唯一值的办法。。。。
...全文
348 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
haojuntu 2013-06-04
  • 打赏
  • 举报
回复
GUID重复还没遇到过
xwbb123 2013-06-04
  • 打赏
  • 举报
回复
zhxhdean 2013-06-04
  • 打赏
  • 举报
回复
恭喜中大奖。
青春code 2013-06-04
  • 打赏
  • 举报
回复
Session.SessionID
ONE-PIECE 2013-06-04
  • 打赏
  • 举报
回复
Guid.NewGuid() 如果连这都重复,建议去买彩票。。。。。。。。。。。
GeneralH 2013-06-04
  • 打赏
  • 举报
回复
GeneralH 2013-06-04
  • 打赏
  • 举报
回复
用Guid.NewGuid()
伴老思源 2013-06-03
  • 打赏
  • 举报
回复
Guid.NewGuid()产生重复的概率比中双色球一等奖的概率还低的多的多,简直都不在一个量级,几乎可以忽略不计~
CSMSDN 2013-06-03
  • 打赏
  • 举报
回复
引用 6 楼 sp1234 的回复:
Guid.NewGuid() 重复情况,如果不是你程序问题,那么其实你就已经中奖了。此时抱着中奖的心态就好了。大不了再来一次。
SAHI1加密,有没有可能重复。。。
linrachel 2013-06-01
  • 打赏
  • 举报
回复
Guid重复的这种事情都遇到了。。。
  • 打赏
  • 举报
回复
Guid.NewGuid() 重复情况,如果不是你程序问题,那么其实你就已经中奖了。此时抱着中奖的心态就好了。大不了再来一次。
CSMSDN 2013-06-01
  • 打赏
  • 举报
回复
引用 4 楼 u010793151 的回复:
 private static int _randIndex = 0;
        #region 生成随机数
        /// <summary>
        /// 生成随机数
        /// </summary>
        /// <param name="num1">开始</param>
        /// <param name="num2">结束</param>
        /// <returns>从多少到多少之间的数据,包括开始不包括结束</returns>
        /// user:jyk
        /// time:2013/2/26 10:55
        public static int RndInt(int num1, int num2)
        {
            if (_randIndex >= 1000000) _randIndex = 1;
            Random rnd = new Random(DateTime.Now.Millisecond + _randIndex);
            _randIndex++;
            return rnd.Next(num1, num2);
        }
        #endregion

        #region 生成数内部不重复的随机数
        /// <summary>
        /// 生成数内部不重复的随机数 0-9
        /// </summary>
        /// <param name="length">位数。范围:2-10</param>
        /// <returns></returns>
        /// user:jyk
        /// time:2013/2/26 10:55
        public static string RndNumNotRepeat(int length)
        {
            if (length > 10) length = 10;
            if (_randIndex >= 1000000) _randIndex = 1;
            var lstChar = new List<char> { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };
            var num = new StringBuilder(length);
            var rnd = new Random(DateTime.Now.Millisecond + _randIndex++);
            for (int i = 0; i < length; i++)
            {
                int rndIndex = rnd.Next(0, 10 - i);
                num.Append(lstChar[rndIndex]);
                lstChar.RemoveAt(rndIndex);
            }
            return num.ToString();
        }
        #endregion
这个应该不行吧。。
金色海洋 2013-06-01
  • 打赏
  • 举报
回复
 private static int _randIndex = 0;
        #region 生成随机数
        /// <summary>
        /// 生成随机数
        /// </summary>
        /// <param name="num1">开始</param>
        /// <param name="num2">结束</param>
        /// <returns>从多少到多少之间的数据,包括开始不包括结束</returns>
        /// user:jyk
        /// time:2013/2/26 10:55
        public static int RndInt(int num1, int num2)
        {
            if (_randIndex >= 1000000) _randIndex = 1;
            Random rnd = new Random(DateTime.Now.Millisecond + _randIndex);
            _randIndex++;
            return rnd.Next(num1, num2);
        }
        #endregion

        #region 生成数内部不重复的随机数
        /// <summary>
        /// 生成数内部不重复的随机数 0-9
        /// </summary>
        /// <param name="length">位数。范围:2-10</param>
        /// <returns></returns>
        /// user:jyk
        /// time:2013/2/26 10:55
        public static string RndNumNotRepeat(int length)
        {
            if (length > 10) length = 10;
            if (_randIndex >= 1000000) _randIndex = 1;
            var lstChar = new List<char> { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };
            var num = new StringBuilder(length);
            var rnd = new Random(DateTime.Now.Millisecond + _randIndex++);
            for (int i = 0; i < length; i++)
            {
                int rndIndex = rnd.Next(0, 10 - i);
                num.Append(lstChar[rndIndex]);
                lstChar.RemoveAt(rndIndex);
            }
            return num.ToString();
        }
        #endregion
金色海洋 2013-06-01
  • 打赏
  • 举报
回复
Guid.NewGuid() 这个会重复吗?
秋色之美 2013-06-01
  • 打赏
  • 举报
回复
DateTime.Now.Ticks 再加 Rnd
xghabc 2013-06-01
  • 打赏
  • 举报
回复
沙发祭天。。。
dq9005 2013-06-01
  • 打赏
  • 举报
回复
gengchenhui 2013-06-01
  • 打赏
  • 举报
回复
guid重复?我记得在什么地方看过说这东西是60年才有机会重复。。。这都被你遇到了?
winner2050 2013-06-01
  • 打赏
  • 举报
回复
Guid.NewGuid() 可以轻易获得任何国家最大的彩票游戏一等奖。
  • 打赏
  • 举报
回复
Guid.NewGuid() 如果你能生成重复项,说明你绝对的中了人类出现依赖最大的奖!
加载更多回复(3)

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧