如何以特定时间格式获取随机时间

时间:2013-08-26 13:37:57

标签: asp.net c#-4.0 random

我想从2013/01/01到今天得到约会。加上时间从14:00到23:00,但时间间隔是15分钟。

例如:

2013/01/01 14:15
2013/01/21 14:30
2013/01/21 17:45
2013/03/17 14:00
.
.
.

关于这个日期,我可以使用下面的代码,但我不确定时间部分

DateTime start = new DateTime(2013, 1, 1);
Random gen = new Random();
int range = (DateTime.Today - start).Days;           
start.AddDays(gen.Next(range));

1 个答案:

答案 0 :(得分:1)

这应该有效:

int startHour = 14;
int endHour = 23;
int allQuarters = Enumerable.Range(0, (endHour - startHour) * 4).Count();
TimeSpan time = TimeSpan.FromMinutes(gen.Next(allQuarters) * 15);
start = start + TimeSpan.FromHours(startHour) + time;

Demo