根据GUID+DateTime.Now.Ticks生产唯一订单号。

    /// <summary>/// 生成唯一数/// </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">时间精确类型  1 日,2 时,3 分,4 秒(默认) </param>/// <param name="id">id 小于或等于0则随机生成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;//填充位数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">时间精确类型  1 日,2 时,3 分,4 秒(默认)</param>/// <param name="id">id 小于或等于0则随机生成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;//填充位数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>/// 获取时间字符串/// </summary>/// <param name="timeType">时间精确类型  1 日,2 时,3 分,4 秒(默认)</param>/// <param name="fillCount">填充位数</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");}}}

C# 生成唯一订单号相关推荐

  1. java生成唯一订单号

    /*** 生成唯一订单号* 规则:四位随机数+"M"+格式化到秒的时间+"R"+六位随机数*/public static String getBillCode( ...

  2. MySQL高并发生成唯一订单号的方法

    高并发下生成唯一订单号的存储过程 这个是用mysql写的存储过程,搭配里面一张数据表使用,达到高并发情况下获得唯一订单号的目的:原理:按照一定规则生成订单号后,把订单号插入数据表后,再返回给用户,由于 ...

  3. 生成唯一订单号 工具类

    package com.jsy.basic.util.utils;import java.text.SimpleDateFormat; import java.util.Date;/*** @prog ...

  4. js 根据时间生成唯一订单号

    一般做唯一编号的时候,可以使用guid或者uuid的包直接生成,但是我希望唯一编号能够反应生成的时间信息,所以就准备使用日期+随机值来构造,代码如下: const tradeNo = function ...

  5. 生成唯一订单号_人人皆知却暗藏玄机的“数据库唯一标识符”

    Hello 大家好,今天给大家讲一个几乎所有数据库都支持的特性:生成唯一标识符. 知乎视频​www.zhihu.com 详细内容: 唯一标识符应用场景非常多,比如网站注册时自动给新用户一个唯一 ID, ...

  6. php订单怎么生成,四种PHP生成唯一订单号的方法

    这几天一直在写个人使用的用户中心,虽然期间遇到不少的问题,但还是一点点的都解决了,也从制作期间学到不少的知识,今天就说一说利用PHP生成订单单的方法. 订单号,大家都不陌生,无论从在网上购物,还是在线 ...

  7. PHP生成唯一订单号

    $order_number = date('Ymd').substr(implode(NULL, array_map('ord', str_split(substr(uniqid(), 7, 13), ...

  8. PHP生成唯一订单号/防止并发订单号重复

    1.初步--这种如果并发+巧合有可能会重复 function genRequestSn($unique=0){$orderNo = date('YmdHis').substr(microtime(), ...

  9. php生成字母数字订单,php生成唯一订单号可控制位数字母和数字

    public static function ddno($len=18)//生成订单号 { $lalist=array( 0,1,2,3,4,5,6,7,8,9,'a','b','c','d','e' ...

最新文章

  1. 徐州联赛选拔赛 - 判断能否构成树
  2. 电商网站模板_阿里云建站:模板建站与定制建站怎么选(小白参考)
  3. java动脑公开课_java课堂动手动脑
  4. java 中的单引号报错_shell中的单引号,双引号,反引号
  5. Serverless实战之路
  6. Windows核心编程_静态编译和动态编译的区别
  7. -bash: cd: /.ssh: 没有那个文件或目录
  8. VScode 光标乱跳
  9. matlab的HDLcoder,matlab中hdl coder 的使用
  10. 嵌入式c语言精华,【精华整理】C语言嵌入式系统编程修炼--键盘操作篇
  11. 二叉平衡树(AVL树)详细理解
  12. word2vec总结
  13. ArcGIS删除字段
  14. 定积分积分换元之区间再现(a+b-x)+一元微积分
  15. Excel if else or and 怎么使用(陕西省身份证号码区域划分)
  16. 免费获取Q币的20种方法?[爆笑版]
  17. 黑夜给了我黑色的眼睛,我用它来寻找黑夜
  18. eCryptfs源码注释(2)
  19. 清理Xcode占用的Mac硬盘空间
  20. 香侬科技 Shannon.AI 招聘自然语言处理、计算机视觉工程师

热门文章

  1. WMTS(Web Map Tile Service)
  2. HFSS波端口和集总端口
  3. 高通平台wifi模块SMMU配置
  4. Leetcode 709 To Lower Case
  5. Android学习记录045_PorterDuff
  6. android 毕业设计答辩ppt,别小看毕业答辩PPT,它和你的论文一样重要
  7. 设计模式----代理模式
  8. (6)3DMAX之挤出修改器、倒角修改器、图形的可渲染属性
  9. Python海龟绘图法详解
  10. java的jre有什么用_jdk和jre是什么?都有什么用