یکی از نیاز هایی که توسعه گران نرم افزار معمولا با آن روبرو می باشند، تولید اعداد، کارکترها، کدها و ... به شکل تصادفی و غیر تکرای می باشد.
یکی از روش هایی که معمولا برای تولید این کدها استفاه می شود، استفاده از کلاس GUID می باشد. شناسه ای که توسط کلاس GUID تولید می شود، شامل 32 کاراکتر به همراه چهار علامت "-" می باشد.
در قسمت زیر یک کد تولید شده توسط این کلاس را ملاحظه می نمایید.
b4c40d8e-1d9b-4fb2-94e7-0cbf663812e3
ولی گاهی اوقات نیاز است که کد تولید شده، فقط شامل اعداد باشد و نه هیچ نوع کاراکتر دیگری.
با استفاده از ترفند زیر می توانیم یک عدد 64 بیتی تصادفی و غیر تکراری ایجاد نماییم. این عمل نیز با کمک گرفتن از کلاس GUID انجام گرفته است.
private Int64 GreateUniqueNumbericID()
{
byte[] bytes = Guid.NewGuid().ToByteArray();
return BitConverter.ToInt64(bytes, 0);
}
نمونه عدد تولید شده توسط تابع بالا به شکل زیر می باشد.
5630644247794381555