Как получить DateTime.Now, начиная со смещения - PullRequest
0 голосов
/ 08 мая 2019

У меня есть сценарий, где мне нужно, чтобы свойство DateTime.Now начиналось с определенной даты, а затем при следующих вызовах просто продолжалось оттуда.

Мне нужно иметь возможность инициализировать Now, скажем, с 1.07.1990, а затем при каждом вызове DateTime.Now подсчитывать, сколько времени прошло.

var offsetedNow=DateTime.Parse("01/07/1990 08:00:30");
//lets say i call the next line after 3 seconds
var newOffsetedNow=F(offsetedNow); // 01/07/1990 08:00:33
//i call it again after 1 minute
var lastNow=F(newOffsetedNow);// 01/07/1990 08:01:33

В основном с определенной даты мне нужно "симулировать", что время течет регулярно.

1 Ответ

1 голос
/ 08 мая 2019

Итак. Свет:

var offset = DateTime.Now - DateTime.Parse("01/07/1990 08:00:30");
System.Threading.Thread.Sleep(3000); 
var offsetedNow = DateTime.Now - offset; 

Hard:

var sw = Stopwatch.StartNew();
System.Threading.Thread.Sleep(3000);
sw.Stop();
var offsetedTime = DateTime.Parse("01/07/1990 08:00:30").Add(new TimeSpan(sw.ElapsedTicks));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...