|
|
@ -1,6 +1,4 @@ |
|
|
using System; |
|
|
|
|
|
using System.Reflection; |
|
|
using System.Reflection; |
|
|
using Microsoft.Extensions.DependencyInjection; |
|
|
|
|
|
using Newtonsoft.Json; |
|
|
using Newtonsoft.Json; |
|
|
using Newtonsoft.Json.Serialization; |
|
|
using Newtonsoft.Json.Serialization; |
|
|
using Volo.Abp.DependencyInjection; |
|
|
using Volo.Abp.DependencyInjection; |
|
|
@ -9,14 +7,11 @@ namespace Volo.Abp.Json.Newtonsoft; |
|
|
|
|
|
|
|
|
public class AbpDefaultContractResolver : DefaultContractResolver, ITransientDependency |
|
|
public class AbpDefaultContractResolver : DefaultContractResolver, ITransientDependency |
|
|
{ |
|
|
{ |
|
|
private readonly Lazy<AbpDateTimeConverter> _dateTimeConverter; |
|
|
private readonly AbpDateTimeConverter _dateTimeConverter; |
|
|
|
|
|
|
|
|
public AbpDefaultContractResolver(IServiceProvider serviceProvider) |
|
|
public AbpDefaultContractResolver(AbpDateTimeConverter dateTimeConverter) |
|
|
{ |
|
|
{ |
|
|
_dateTimeConverter = new Lazy<AbpDateTimeConverter>( |
|
|
_dateTimeConverter = dateTimeConverter; |
|
|
serviceProvider.GetRequiredService<AbpDateTimeConverter>, |
|
|
|
|
|
true |
|
|
|
|
|
); |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
protected override JsonProperty CreateProperty(MemberInfo member, MemberSerialization memberSerialization) |
|
|
protected override JsonProperty CreateProperty(MemberInfo member, MemberSerialization memberSerialization) |
|
|
@ -25,7 +20,7 @@ public class AbpDefaultContractResolver : DefaultContractResolver, ITransientDep |
|
|
|
|
|
|
|
|
if (AbpDateTimeConverter.ShouldNormalize(member, property)) |
|
|
if (AbpDateTimeConverter.ShouldNormalize(member, property)) |
|
|
{ |
|
|
{ |
|
|
property.Converter = _dateTimeConverter.Value; |
|
|
property.Converter = _dateTimeConverter; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
return property; |
|
|
return property; |
|
|
|