Asp.net 产生无重复ID 年月日+三位随机数
2010-08-14 19:36
274 查看
using System.Text;
/// <summary>
/// 获得三位的随机数
/// </summary>
/// <returns></returns>
public string getTreeNumRandom()
{
Random ro = new Random();
int iResult;
int iUp = 999;
int iDown = 100;
iResult = ro.Next(iDown, iUp);
//Response.Write(iResult.ToString());
return iResult.ToString().Trim();
}
/// <summary>
/// 新的日期字符串
/// </summary>
/// <param name="oldShortDateTime"></param>
/// <returns></returns>
public string generateNewLongDateTime(string oldShortDateTime)
{
System.DateTime currentTime = DateTime.Now;
string LongTimeString = currentTime.ToLongTimeString().ToString().Trim();//10:01:01
string DateAndTime = oldShortDateTime.Trim() + " " + LongTimeString.Trim(); //2004-01-02 10:01:01 组成一个新的日期字符串
DateTime NewDateAndTime = Convert.ToDateTime(DateAndTime);
DateAndTime = NewDateAndTime.ToString("yyyyMMddhhmmss");
return DateAndTime;
}
无重复的ID生成可由上述二个函数来生成:oldShortDateTime = "2010-08-14"
既可以生成由当前日期生成的ID,也可以由以前日期来生成这样的ID
string newid = generateNewLongDateTime("2010-08-14") + getTreeNumRandom();
NewDateAndTime.ToString("yyyyMMddhhmmss"); 这一句有问题,如果是下午12点以后,就会产生13-12,14-12的情况,不是按24小时制来完成的。
ToString("yyyyMMddhhmmss"); 12时制
要改成ToString("yyyyMMddHHmmss"); 24时制
/// <summary>
/// 获得三位的随机数
/// </summary>
/// <returns></returns>
public string getTreeNumRandom()
{
Random ro = new Random();
int iResult;
int iUp = 999;
int iDown = 100;
iResult = ro.Next(iDown, iUp);
//Response.Write(iResult.ToString());
return iResult.ToString().Trim();
}
/// <summary>
/// 新的日期字符串
/// </summary>
/// <param name="oldShortDateTime"></param>
/// <returns></returns>
public string generateNewLongDateTime(string oldShortDateTime)
{
System.DateTime currentTime = DateTime.Now;
string LongTimeString = currentTime.ToLongTimeString().ToString().Trim();//10:01:01
string DateAndTime = oldShortDateTime.Trim() + " " + LongTimeString.Trim(); //2004-01-02 10:01:01 组成一个新的日期字符串
DateTime NewDateAndTime = Convert.ToDateTime(DateAndTime);
DateAndTime = NewDateAndTime.ToString("yyyyMMddhhmmss");
return DateAndTime;
}
无重复的ID生成可由上述二个函数来生成:oldShortDateTime = "2010-08-14"
既可以生成由当前日期生成的ID,也可以由以前日期来生成这样的ID
string newid = generateNewLongDateTime("2010-08-14") + getTreeNumRandom();
NewDateAndTime.ToString("yyyyMMddhhmmss"); 这一句有问题,如果是下午12点以后,就会产生13-12,14-12的情况,不是按24小时制来完成的。
ToString("yyyyMMddhhmmss"); 12时制
要改成ToString("yyyyMMddHHmmss"); 24时制
相关文章推荐
- Asp.net 产生无重复ID 年月日+三位随机数
- asp.net 无重复随机数代码
- asp.net图片上传-简单实用(VS2008 FileUpload控件+ASP.NET2.0)按时间+三位随机数重命名
- asp.net图片上传-简单实用(VS2008 FileUpload控件+ASP.NET2.0)按时间+三位随机数重命名
- PHP产生不重复随机数的5个方法总结(该文章转自酷笔记http://www.kubiji.cn/topic-id3976.html)
- asp.net模拟多用户并发产生不重复递增单号的方法
- ASP.net产生随机数
- ASP产生不重复的随机数(模拟洗牌)
- C# ASP.NET B/S模式下,采用lock语法 实现多用户并发产生不重复递增单号的一种解决方法技术参考
- C# ASP.NET B/S模式下,采用lock语法 实现多用户并发产生不重复递增单号的一种解决方法技术参考
- asp.net图片上传-简单实用(VS2008 FileUpload控件+ASP.NET2.0)按时间+三位随机数重命名
- asp.net 无重复随机数代码
- asp.net 无重复随机数代码
- C# ASP.NET B/S模式下,采用lock语法 实现多用户并发产生不重复递增单号的一种解决方法技术参考
- asp.net不重复随机数
- C# ASP.NET B/S模式下,采用lock语法 实现多用户并发产生不重复递增单号的一种解决方法技术参考
- C# ASP.NET B/S模式下,采用lock语法 实现多用户并发产生不重复递增单号的一种解决方法技术参考
- C# ASP.NET B/S模式下,采用lock语法 实现多用户并发产生不重复递增单号的一种解决方法技术参考
- ASP.NET中随机数的产生
- C# ASP.NET B/S模式下,采用lock语法 实现多用户并发产生不重复递增单号的一种解决方法技术参考