private static PropertyContractResolver InitResolver([NotNull] JsonSerializerSettings settings) { if (settings is null) { throw new ArgumentNullException(nameof(settings)); } switch (settings.ContractResolver) { case null: { PropertyContractResolver resolver = new PropertyContractResolver(); settings.ContractResolver = resolver; return(resolver); } case PropertyContractResolver resolver: { return(resolver); } case DefaultContractResolver other: { PropertyContractResolver resolver = new PropertyContractResolver(other); settings.ContractResolver = resolver; return(resolver); } default: throw new NotSupportedException( $"Invalid {nameof(settings.ContractResolver)}. Expected {nameof(DefaultContractResolver)}, received {settings.ContractResolver.GetType().FullName}."); } }
private static PropertyContractResolver GetResolver() { PropertyContractResolver resolver = new PropertyContractResolver(); resolver.IgnoreProperty(typeof(PreferenceData), nameof(PreferenceData.PreferenceLocation)); resolver.IgnoreProperty(typeof(ObservableDirtyObject), nameof(PreferenceData.IsDirty)); return(resolver); }
private static JsonSerializerSettings GetSettings() { JsonSerializerSettings settings = new JsonSerializerSettings(); PropertyContractResolver resolver = new PropertyContractResolver(); resolver.IgnoreProperty(typeof(FileObject), nameof(Recipe.Info)); resolver.IgnoreProperty(typeof(ObservableDirtyObject), nameof(Recipe.IsDirty)); resolver.SetAllLetterCase(Lettercase.Lowercase); resolver.SetNullStringEmpty(true); settings.ContractResolver = resolver; settings.Converters.Add(new RecipeJsonConverter()); return(settings); }