唯一标识符

时间:2010-04-17 07:59:51

标签: c#

我想在.NET中使用以下格式生成唯一标识符:

xxxxx-xxxxx

其中x是数字{0-9};

2 个答案:

答案 0 :(得分:17)

  

我想在.NET中使用以下格式生成唯一标识符:xxxxx-xxxxx其中x是数字{0-9}

当然,没问题。我们不需要为此编写程序。我们将手工完成。

00000-00000是具有该格式的唯一标识符。完成。

哦,你想要不止一个?好吧,你可能应该在问题陈述中说过。 :)

该语言中有十亿个字符串,按顺序生成它们是微不足道的。因此,为您的第一个唯一标识符生成00000-00000。然后00000-00001为您的第二个唯一标识符。然后00000-00002为您的第三个唯一标识符。等等。您将能够以这种方式生成100亿个唯一标识符;你所要做的就是跟踪哪一个是以前产生的最高值。

答案 1 :(得分:-1)

嗯,它不会像真正的Guid那样独特,但你可以使用Random来生成每个数字。请务必使用私有静态Random对象以避免获得相同的随机序列:

private static m_random as new System.Random();
public string MySpecialID()
{
  return string.Format("{0}{1}{2}{3}{4}-{5}{6}{7}{8}{9}",
       m_random.Next(0, 10),
       m_random.Next(0, 10),
       m_random.Next(0, 10),
       m_random.Next(0, 10),
       m_random.Next(0, 10),
       m_random.Next(0, 10),
       m_random.Next(0, 10),
       m_random.Next(0, 10),
       m_random.Next(0, 10),
       m_random.Next(0, 10));
}