销售单据号重复问题 本帖最后由 abel_fly 于 2010-08-17 14:23:38 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 单号直接:string id = DateTime.Now.ToString("yyyyMMddHHmmss"); 随机数都伪随机,不保证完全一致。销售单编号不能是完全随机的,市面上通常是机构编码+日期+当天序号。生成编码的时候,要用个lock 来保证同一时刻只执行一次。销售单是有主表和子表的,程序添加完主表以后就可以解锁了。速度是非常非常快的。 public string InitBarCode() { string id = "XS"; Random r = new Random(); id += DateTime.Now.Second.ToString().Length == 1 ? "0" + DateTime.Now.Second.ToString() : DateTime.Now.Second.ToString() + r.Next(100000000).ToString(); return id;}===============================这个代码的可靠性巨差。多次调用 DateTime.Now.Second.ToString() 很可能最终是不一样的。对DateTime 自带的函数非常不了解。直接来个 DateTime.Now.ToString("ss");就完了。 Random有什么道理不会重复?不要滥用ViewState,怎么能用来存DataTable呢?! Random重复很正常 Random rand = new Random(unchecked(iCount * (int)DateTime.Now.Ticks));变化一般都有规则如名称+日期+最大编号lock顺序访问对象时候使用 这个问题我遇到了,我的处理是 插入数据时查询已有数据,然后加1操作类型+日期(yyyy-MM-dd)+已有数据加1(4位)! 请教,ASP.NET如何实现文件夹上传下载? 如果高效记录页面访问数据 VS 2008命令提示问题 网页中嵌入的Media Player 在播放时复位 100分求助一个问题.内详(在线等马上给分) 如何设置带逗号的cookie 谁有城市,地区2级数据库啊 一个经常遇到的很实在的问题:在ASP.NET网页编程中,如何让 javascript 和 C#(VB) 间的变量互相使用? 本站本日访问数,月访问数,年访问数,最高访问日怎么做:) 大家注意了:现在流行的农历算法的C#代码,有个大BUG,不知道谁能修改!!! 怎么获取DataList的值? 如何在html页面上画图
string id = DateTime.Now.ToString("yyyyMMddHHmmss");
{
string id = "XS";
Random r = new Random();
id += DateTime.Now.Second.ToString().Length == 1 ? "0" + DateTime.Now.Second.ToString() : DateTime.Now.Second.ToString() + r.Next(100000000).ToString();
return id;
}
===============================
这个代码的可靠性巨差。
多次调用 DateTime.Now.Second.ToString() 很可能最终是不一样的。
对DateTime 自带的函数非常不了解。
直接来个 DateTime.Now.ToString("ss");就完了。
变化一般都有规则如名称+日期+最大编号
lock顺序访问对象时候使用
我的处理是 插入数据时查询已有数据,然后加1
操作类型+日期(yyyy-MM-dd)+已有数据加1(4位)!