2022-01-21 00:10:27 +02:00
|
|
|
using Newtonsoft.Json;
|
|
|
|
|
using Newtonsoft.Json.Serialization;
|
|
|
|
|
|
2023-07-29 15:14:52 +03:00
|
|
|
namespace West.TelegramBot.ChatQuotes.Json;
|
|
|
|
|
|
|
|
|
|
class NullToEmptyObjectResolver : DefaultContractResolver
|
2022-01-21 00:10:27 +02:00
|
|
|
{
|
2023-07-29 15:14:52 +03:00
|
|
|
protected override IList<JsonProperty> CreateProperties(Type type, MemberSerialization memberSerialization)
|
2022-01-21 00:10:27 +02:00
|
|
|
{
|
2023-07-29 15:14:52 +03:00
|
|
|
return type.GetProperties()
|
|
|
|
|
.Select(p => {
|
|
|
|
|
var jp = base.CreateProperty(p, memberSerialization);
|
|
|
|
|
jp.ValueProvider = new NullToEmptyObjectValueProvider(p);
|
|
|
|
|
return jp;
|
|
|
|
|
}).ToList();
|
2022-01-21 00:10:27 +02:00
|
|
|
}
|
2023-07-29 15:14:52 +03:00
|
|
|
}
|