Сервер отдаёт дату вот в таком формате: 2015-04-24T07:00:51Z
. Мне нужно узнать, не старше ли эта дата, например, трёх дней. Код ниже, естественно, не работает. Вероятно, дело в CultureInfo, но как мне тогда привести всё к общему знаменателю (формат выдачи сервером)? Или проблема в ином?
if ( (DateTime.UtcNow - stuff["query"]["users"][0]["registration"]).TotalDays < 3 )
Заране благодарен за помощь.
Используйте Json.Net для работы, он вам сам сконвертирует в дату.
var source = "{\"batchcomplete\":\"\",\"query\":{\"users\":[{\"userid\":24920566,\"name\":\"Example\",\"regist" +
"ration\":\"2015-04-24T07:00:51Z\"}]}}";
var data = JsonConvert.DeserializeObject<Abc>(source);
data.Dump();
data.Query.Users[0].Registration.Dump();
Вспомогательные классы создал сервисом:
public partial class Abc
{
[JsonProperty("batchcomplete")]
public string Batchcomplete { get; set; }
[JsonProperty("query")]
public Query Query { get; set; }
}
public partial class Query
{
[JsonProperty("users")]
public User[] Users { get; set; }
}
public partial class User
{
[JsonProperty("userid")]
public long Userid { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("registration")]
public DateTimeOffset Registration { get; set; }
}
Вывод linqpad:
Библиотека Json.Net умеет распознавать даты разных форматов, также можно написать собственные парсеры, например вот или посмотрите на en so.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Я хочу сделать так, чтобы можно было отсортировать двумерные точкиТо есть объекты, у которых есть 2 числовых значения
Мне нужно постоянно пинговать около 400 машин и при это м чтобы другой функционал программы работалПишу так :
Здравсвуйте, нужно реализовать внутрениий EventBus (не микросервисное взаимодействие на основе например RabbitMq)Все издатели пишут на общую шину...
Нужно сделать проверку что бы введенное слово не содержало английских символов (f,a,g)Но простым, длинным str