Я пытаюсь передать дату UTC в качестве параметра строки запроса методу веб-API. URL-адрес выглядит как
/api/order?endDate=2014-04-01T00:00:00Z&zoneId=4
Подпись метода выглядит как
[HttpGet]
public object Index(int zoneId, DateTime? endDate = null)
Дата приходит как 31/03/2014 8:00:00 PM
, но я бы хотел, чтобы она появилась как 01/04/2014 12:00:00 AM
Мой JsonFormatter.SerializerSettings
выглядит следующим образом
new JsonSerializerSettings
{
ContractResolver = new CamelCasePropertyNamesContractResolver(),
DateTimeZoneHandling = DateTimeZoneHandling.Utc,
DateFormatHandling = DateFormatHandling.IsoDateFormat
};
ИЗМЕНИТЬ № 1:
Я заметил, что когда я отправляю POST 2014-04-01T00:00:00Z
, он будет сериализоваться в формате UTC DateTime в С#. Однако я нашел работу над endDate.Value.ToUniversalTime()
, чтобы преобразовать ее, хотя мне показалось странным, как она работает для POST, но не GET.