c#生成订单号,该怎么处理
c#生成订单号
c#生成订单号按照时间和每天从00001开始
例如; 20120117091100001 前面是当日年月日时分 后面是00001,00002,00003....递增的
不用sql生成 用c#怎么弄?
------解决方案--------------------
class IDGenerator
{
........
public string CreateID();
}
------解决方案--------------------
这个么。。。很可能会有重复值啊
还是sql里弄吧。。
------解决方案--------------------
------解决方案--------------------
你都要读数据库最大的ID出来才能拼出这个地址的。还不如直接在存储过程做。
------解决方案--------------------
c#生成订单号按照时间和每天从00001开始
例如; 20120117091100001 前面是当日年月日时分 后面是00001,00002,00003....递增的
不用sql生成 用c#怎么弄?
------解决方案--------------------
class IDGenerator
{
........
public string CreateID();
}
------解决方案--------------------
这个么。。。很可能会有重复值啊
还是sql里弄吧。。
------解决方案--------------------
------解决方案--------------------
你都要读数据库最大的ID出来才能拼出这个地址的。还不如直接在存储过程做。
------解决方案--------------------
- C# code
int max = 100; System.Linq.Enumerable.Range(1, max).ToList().ForEach(i => { string value = "0000000" + i.ToString(); Console.WriteLine("{0}{1}", DateTime.Now.ToString("yyyyMMddhhmm"), value.Substring(value.Length - 5)); });
------解决方案--------------------
- C# code
class Program { static void Main(string[] args) { Console.WriteLine(CreateOrderNumber("20120117091100001")); } /// <summary> /// 生成新订单号 /// </summary> /// <param name="thisOrderNumber">当前订单号</param> /// <returns>返回新订单号</returns> public static string CreateOrderNumber(string thisOrderNumber) { string num = thisOrderNumber.Substring(12, 5); int newNum = int.Parse(num) + 1; return DateTime.Now.ToString("yyyyMMddHHmm")+newNum.ToString().PadLeft(5,'0'); } }
------解决方案--------------------
肯定要涉及数据库操作的吧,否则很容易出现重复的