C#抽獎優惠券生成唯一碼方法


近日做一抽獎活動 當時直接用Guid生成唯一碼做優惠券唯一碼使用

后來需求提出唯一碼太長,需要優化,找到以下幾個不錯的方法實現同時分享一下:

1.時間戳方法

private string CreateId()
{
  TimeSpan ts = DateTime.UtcNow - new DateTime(2016, 1, 1, 0, 0, 0, 0);
  return Convert.ToInt64(ts.TotalSeconds).ToString();
}

2.利用GUID和時間Ticks組成的字母+數字 重點在string.Format()方法可以純數字也可以+字母

 private string CreateId()
{
  long i = 1;
  foreach (byte b in Guid.NewGuid().ToByteArray())
  {
    i *= ((int)b + 1);
  }
  return string.Format("{0:x}", i - DateTime.Now.Ticks);
} 
3、生成數字唯一碼
private long CreateId()
{
  byte[] buffer = Guid.NewGuid().ToByteArray();
  return BitConverter.ToInt64(buffer, 0);
} 


 

北清論文網-中國領先的應屆畢業生論文網站

北清論文網】【我要畢業啦論文網


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM