Don't recreate JsonSerializerOptions every time

pull/3538/head
David 4 years ago
parent ee03b919f9
commit 9f567e6471

@ -9,6 +9,8 @@ namespace MediaBrowser.Common.Json
/// </summary>
public static class JsonDefaults
{
private static JsonSerializerOptions _defaultOptions;
/// <summary>
/// Gets the default <see cref="JsonSerializerOptions" /> options.
/// </summary>
@ -21,20 +23,26 @@ namespace MediaBrowser.Common.Json
/// <returns>The default <see cref="JsonSerializerOptions" /> options.</returns>
public static JsonSerializerOptions GetOptions()
{
var options = new JsonSerializerOptions
if (_defaultOptions == null)
{
ReadCommentHandling = JsonCommentHandling.Disallow,
WriteIndented = false
};
var options = new JsonSerializerOptions
{
ReadCommentHandling = JsonCommentHandling.Disallow,
WriteIndented = false
};
options.Converters.Add(new JsonGuidConverter());
options.Converters.Add(new JsonInt32Converter());
options.Converters.Add(new JsonStringEnumConverter());
options.Converters.Add(new JsonNonStringKeyDictionaryConverterFactory());
options.Converters.Add(new JsonInt64Converter());
options.Converters.Add(new JsonDoubleConverter());
options.Converters.Add(new JsonGuidConverter());
options.Converters.Add(new JsonInt32Converter());
options.Converters.Add(new JsonStringEnumConverter());
options.Converters.Add(new JsonNonStringKeyDictionaryConverterFactory());
options.Converters.Add(new JsonInt64Converter());
options.Converters.Add(new JsonDoubleConverter());
return options;
_defaultOptions = options;
return _defaultOptions;
}
return _defaultOptions;
}
/// <summary>

Loading…
Cancel
Save