در ساده ترین حالت اینکار معمولا از طریق GUID انجام میشود :
private string GenerateId1()
{
return Guid.NewGuid().ToString();
}
نمونه ای از خروجی:
c1eab2fa-63bb-426f-a2ff-dd87b03c0aa0
یک الگوریتم دیگر :
private string GenerateId2()
{
long i = 1;
foreach (byte b in Guid.NewGuid().ToByteArray())
{
i *= ((int)b + 1);
}
return string.Format("{0:x}", i - DateTime.Now.Ticks);
}
نمونه ای از خروجی:
4f2014c22f7c88ea
یک الگوریتم دیگر :
private long GenerateId3()
{
byte[] buffer = Guid.NewGuid().ToByteArray();
return BitConverter.ToInt64(buffer, 0);
}
نمونه ای از خروجی :
5209165259893891216
منبع : http://www.csharphelp.com/archives4/archive691.html