Enhance JSON serialization
Introduced improved encoding by setting the JavaScriptEncoder to unicode ranges and added necessary using directives. Additionally, the Serialize method is now appropriately marked to indicate its use of code that requires unreferenced code during linking, following best practices for code that may be subject to trimming in a .NET environment.
This commit is contained in:
parent
f568df6767
commit
519ab07a1c
|
|
@ -1,6 +1,9 @@
|
|||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Text.Encodings.Web;
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Text.Unicode;
|
||||
using Elsa.Expressions.Helpers;
|
||||
using Elsa.Expressions.Models;
|
||||
using Elsa.Extensions;
|
||||
|
|
@ -172,9 +175,13 @@ public class JintJavaScriptEvaluator : IJavaScriptEvaluator
|
|||
return result.ToObject();
|
||||
}
|
||||
|
||||
[RequiresUnreferencedCode("Calls System.Text.Json.JsonSerializer.Serialize<TValue>(TValue, JsonSerializerOptions)")]
|
||||
private static string Serialize(object value)
|
||||
{
|
||||
var options = new JsonSerializerOptions();
|
||||
var options = new JsonSerializerOptions
|
||||
{
|
||||
Encoder = JavaScriptEncoder.Create(UnicodeRanges.All)
|
||||
};
|
||||
options.Converters.Add(new JsonStringEnumConverter());
|
||||
|
||||
return JsonSerializer.Serialize(value, options);
|
||||
|
|
|
|||
Loading…
Reference in a new issue