最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#如何生成唯一訂單號(hào)

 更新時(shí)間:2018年08月31日 17:13:36   作者:一路狂奔的我  
這篇文章主要為大家詳細(xì)介紹了C#如何生成唯一訂單號(hào),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了C#生成唯一訂單號(hào)的具體代碼,供大家參考,具體內(nèi)容如下

根據(jù)GUID+DateTime.Now.Ticks生產(chǎn)唯一訂單號(hào)

/// <summary>
  /// 生成唯一數(shù)
  /// </summary>
  public class UniqueData
  {
    private static object obj = new object();
    private static int GuidInt { get { return Guid.NewGuid().GetHashCode(); } }
    private static string GuidIntStr { get { return Math.Abs(GuidInt).ToString(); } }

    /// <summary>
    /// 生成
    /// </summary>
    /// <param name="mark">前綴</param>
    /// <param name="timeType">時(shí)間精確類型 1 日,2 時(shí),3 分,4 秒(默認(rèn)) </param>
    /// <param name="id">id 小于或等于0則隨機(jī)生成id</param>
    /// <returns></returns>
    public static string Gener(string mark, int timeType = 4, int id = 0)
    {
      lock (obj)
      {
        var number = mark;
        var ticks = (DateTime.Now.Ticks - GuidInt).ToString();
        int fillCount = 0;//填充位數(shù)

        number += GetTimeStr(timeType, out fillCount);
        if (id > 0)
        {
          number += ticks.Substring(ticks.Length - (fillCount + 3)) + id.ToString().PadLeft(10, '0');
        }
        else
        {
          number += ticks.Substring(ticks.Length - (fillCount + 3)) + GuidIntStr.PadLeft(10, '0');
        }
        return number;
      }
    }

    /// <summary>
    /// 生成
    /// </summary>
    /// <param name="mark">前綴</param>
    /// <param name="timeType">時(shí)間精確類型 1 日,2 時(shí),3 分,4 秒(默認(rèn))</param>
    /// <param name="id">id 小于或等于0則隨機(jī)生成id</param>
    /// <returns></returns>
    public static string GenerLong(string mark, int timeType = 4, long id = 0)
    {
      lock (obj)
      {
        var number = mark;
        var ticks = (DateTime.Now.Ticks - GuidInt).ToString();
        int fillCount = 0;//填充位數(shù)

        number += GetTimeStr(timeType, out fillCount);
        if (id > 0)
        {
          number += ticks.Substring(ticks.Length - fillCount) + id.ToString().PadLeft(19, '0');
        }
        else
        {
          number += GuidIntStr.PadLeft(10, '0') + ticks.Substring(ticks.Length - (9 + fillCount));
        }
        return number;
      }
    }

    /// <summary>
    /// 獲取時(shí)間字符串
    /// </summary>
    /// <param name="timeType">時(shí)間精確類型 1 日,2 時(shí),3 分,4 秒(默認(rèn))</param>
    /// <param name="fillCount">填充位數(shù)</param>
    /// <returns></returns>
    private static string GetTimeStr(int timeType, out int fillCount)
    {
      var time = DateTime.Now;
      if (timeType == 1)
      {
        fillCount = 6;
        return time.ToString("yyyyMMdd");
      }
      else if (timeType == 2)
      {
        fillCount = 4;
        return time.ToString("yyyyMMddHH");
      }
      else if (timeType == 3)
      {
        fillCount = 2;
        return time.ToString("yyyyMMddHHmm");
      }
      else
      {
        fillCount = 0;
        return time.ToString("yyyyMMddHHmmss");
      }
    }
  }

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 一文詳解C#?Chart控件

    一文詳解C#?Chart控件

    這篇文章主要介紹了一文學(xué)習(xí)C#?Chart控件,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • C#中關(guān)于可空類型的小知識(shí)

    C#中關(guān)于可空類型的小知識(shí)

    這篇文章主要介紹了C#中關(guān)于可空類型的小知識(shí),本文講解可空類型運(yùn)算的小技巧,需要的朋友可以參考下
    2015-04-04
  • 使用C#實(shí)現(xiàn)MD5加密的方法詳解

    使用C#實(shí)現(xiàn)MD5加密的方法詳解

    在軟件開發(fā)中,加密是保護(hù)數(shù)據(jù)安全的重要手段之一,MD5(Message Digest Algorithm 5)是一種常用的哈希算法,用于生成數(shù)據(jù)的摘要或哈希值,本文介紹了如何使用C#語言實(shí)現(xiàn)MD5加密的方法,涵蓋了基本的使用方式和擴(kuò)展方法封裝,需要的朋友可以參考下
    2024-08-08
  • C#解析JSON實(shí)例

    C#解析JSON實(shí)例

    這篇文章主要介紹了C#解析JSON的方法,主要采用了C#自帶的JavaScriptSerializer類來實(shí)現(xiàn),方法簡單實(shí)用,需要的朋友可以參考下
    2014-09-09
  • C#中的 StreamReader/StreamWriter 使用示例詳解

    C#中的 StreamReader/StreamWriter 使用示例詳解

    在 C# 開發(fā)中,StreamReader 和 StreamWriter 是處理文本文件的核心類,屬于 System.IO 命名空間,本文將從基礎(chǔ)到高級(jí)用法,結(jié)合代碼示例,全面解析其核心功能、性能優(yōu)化及常見問題解決方案,感興趣的朋友一起看看吧
    2025-03-03
  • C# Winform實(shí)現(xiàn)表格復(fù)制粘貼效果

    C# Winform實(shí)現(xiàn)表格復(fù)制粘貼效果

    這篇文章主要為大家學(xué)習(xí)介紹了如何通過C# Winform實(shí)現(xiàn)表格復(fù)制粘貼效果,文中的示例代碼講解詳細(xì),具有一定的參考價(jià)值,需要的可以了解一下
    2023-07-07
  • 詳解C# Lazy Loading(延遲加載)

    詳解C# Lazy Loading(延遲加載)

    這篇文章主要介紹了C# Lazy Loading(延遲加載)的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下
    2021-04-04
  • C#?如何使用批處理啟動(dòng)Windows服務(wù)

    C#?如何使用批處理啟動(dòng)Windows服務(wù)

    這篇文章主要介紹了C#使用批處理啟動(dòng)Windows服務(wù),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • C# 在PDF文檔中創(chuàng)建表格的實(shí)現(xiàn)方法

    C# 在PDF文檔中創(chuàng)建表格的實(shí)現(xiàn)方法

    表格能夠一目了然的讓用戶看到數(shù)據(jù)信息,使信息顯得有條理化,那么在pdf類型的文檔中如何來添加表格并對(duì)表格進(jìn)行格式化操作呢?下面小編給大家?guī)砹薈# 在PDF文檔中創(chuàng)建表格的實(shí)現(xiàn)方法,需要的朋友參考下吧
    2017-12-12
  • C# wpf使用ffmpeg命令行實(shí)現(xiàn)錄屏的示例代碼

    C# wpf使用ffmpeg命令行實(shí)現(xiàn)錄屏的示例代碼

    本文主要介紹了C# wpf使用ffmpeg命令行實(shí)現(xiàn)錄屏的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08

最新評(píng)論

葫芦岛市| 曲松县| 安新县| 个旧市| 郸城县| 白河县| 孝感市| 澳门| 三江| 麻栗坡县| 藁城市| 孝义市| 永善县| 五常市| 张家川| 桐庐县| 邻水| 鲜城| 通辽市| 莱州市| 常宁市| 临漳县| 东辽县| 文成县| 梨树县| 且末县| 邢台县| 旅游| 久治县| 融水| 马山县| 长丰县| 屏东市| 仙桃市| 原平市| 平阴县| 容城县| 含山县| 屏山县| 泾川县| 奎屯市|