Как мне проинструктировать Нэнси 2.0.0 -clinteastwood сделать пользовательскую десериализацию до DateTime
, например, из этого json
{
"someDate": "2018-09-18"
}
в DateTime
свойство, например, в экземпляре этого класса C #
public class SomeClass
{
public DateTime SomeDate { get; set; }
}
?
В версиях до 2.0.0 вы могли , по-видимому, назначить свой пользовательский JavaScriptPrimitiveConverter
путем вызова статического JsonSettings
, например, в ApplicationStartup
, например,
Nancy.Json.JsonSettings.PrimitiveConverters.Add(new CustomJavaScriptPrimitiveConverter())
, и я мог бы реализовать переопределение десериализации JavaScriptPrimitiveConverter
, например,
public override object Deserialize(object primitiveValue, Type type, JavaScriptSerializer serializer)
{
if (type == typeof(DateTime))
{
if (primitiveValue is string dateString
&& DateTime.TryParseExact(dateString, "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal, out var dateTime))
{
return dateTime;
}
}
return null;
}
Однако статический класс JsonSettings, по-видимому, недоступен в 2.0.0.
По результатам поиска мне кажется, что есть некоторые функции SimpleJson, которые можно использовать для достижения этой цели, но я не могу найти какие-либопримеры и любая документация, которую я нахожу, кажется, не обновляется с помощью способа 2.0.0.