2016-11-04 2 views
2

Мы используем TFS 2015 через REST API, чтобы выяснить, какие наборы изменений, где проверяется между двумя DateTimes:TFS 2015 Update 2 на помещения - Daylight Saving вопрос

http://internal01:8080/tfs/AppCollection/hr/_apis/tfvc/changesets?fromDate=2016-10-25T14:40:01.570&itemPath=$/HR/P1/Tempest/DevQA&api-version=1.0&toDate=2016-10-25T14:50:01.570 

Вопрос заключается в том, что в Великобритании, мы закончили переход на летнее время на прошлой неделе.

Даже если ревизия в визуальной студии показывает правильное время приезда

В API остальное возвращается этот товар время как час позади (фиксирование было на прошлой неделе во время перехода на летнее время.

"createdDate":"2016-10-25T13:49:44.573Z", 

Он возвращает набор изменений, который отлично подходит, но возвращаемое значение не учитывает летнее время.

ответ

1

API возвращает дату в «Zulu Time», или Coordinated Universal Time (UTC), согласно speci фикации для Дата времена

Вы можете сказать, быть задн «Z» на строку:

"createdDate":"2016-10-25T13:49:44.573Z", 
            ^

Это вполне обычное дело для API, чтобы сделать, помните точно такой же API, в Visual Studio Team Services , который размещается во многих часовых поясах и доступен клиентам в нескольких часовых поясах.

В этих случаях клиентом требуется преобразовать время в местное время.

Тривиальным C#/NET реализация:.

var createdDateUtc = "2016-10-25T13:49:44.573Z"; 
var createdDateLocal = DateTimeOffset.Parse(createdDateUtc).ToLocalTime(); 
Console.WriteLine(createdDateLocal); 

//Prints: 25/10/2016 14:49:44 +01:00 
+0

СПАСИБО! это некоторое время подслушивало нас. Отметьте это как ответ, но мои очки недостаточно высоки. –

+1

@MarkJohnson Я не думаю, что принятие требует какой-либо репутации (это действительно дает rep IIRC). – DaveShaw

+0

ОК, должно быть, неправильно понял. Спасибо за головы! –

 Смежные вопросы

  • Нет связанных вопросов^_^