很急 c# 代码 按日期生成批号 前面是日期 后面按每一天从 001、002 一直往后排 如20120503001 20120503002
很急c#代码按日期生成批号前面是日期后面按每一天从001、002一直往后排如201205030012012050300220120504001...
很急 c# 代码 按日期生成批号 前面是日期 后面按每一天从 001、002 一直往后排 如20120503001 20120503002 20120504001
展开
展开全部
public static class LastNum
{
static LastNum()//初始化
{
numIndex = 1;
dateIndex = DateTime.Now;
}
private static int numIndex;//当前自增数
private static DateTime dateIndex;//当前日期
private static int NumIndex//获取当前自增数
{
get
{
if (dateIndex.Day != DateTime.Now.Day)//如果隔天则初始化自增数和日期
{
numIndex = 1;
dateIndex = DateTime.Now;
}
return numIndex++;//先返回自增数,之后+1
}
}
public static string NumStr//返回日期与自增数拼成的标识
{
get
{
return dateIndex.ToString("yyyyMMdd") + NumIndex.ToString("d3");
}
}
}
=============
调用
string indexStr = LastNum.NumStr;
{
static LastNum()//初始化
{
numIndex = 1;
dateIndex = DateTime.Now;
}
private static int numIndex;//当前自增数
private static DateTime dateIndex;//当前日期
private static int NumIndex//获取当前自增数
{
get
{
if (dateIndex.Day != DateTime.Now.Day)//如果隔天则初始化自增数和日期
{
numIndex = 1;
dateIndex = DateTime.Now;
}
return numIndex++;//先返回自增数,之后+1
}
}
public static string NumStr//返回日期与自增数拼成的标识
{
get
{
return dateIndex.ToString("yyyyMMdd") + NumIndex.ToString("d3");
}
}
}
=============
调用
string indexStr = LastNum.NumStr;
展开全部
int i =1;
datetime.now.tostring("yyyyMMdd")+ i.tostring("d3");
i自增
datetime.now.tostring("yyyyMMdd")+ i.tostring("d3");
i自增
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果该字段为主键,建议从数据库着手,通过存储过程来做insert操作。
用c#做也可以,你要读取数据库来保持批号唯一,然后根据上面这些朋友的方法进行字符串格式化就行。
用c#做也可以,你要读取数据库来保持批号唯一,然后根据上面这些朋友的方法进行字符串格式化就行。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没戏。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-05-03
展开全部
后面最多有几个数?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这种问题最好在数据库中用函数解决。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询