2013-08-26 3 views
0

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)); 
+0

0 ~ 36의 범위의 무작위 정수에 15 분을 곱합니다. – stark

답변

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

관련 문제