Browse Source

Just a minor allocation improvement.

pull/498/head
Sebastian 6 years ago
parent
commit
4608c20081
  1. 4
      backend/src/Squidex.Infrastructure/Queries/ClrValue.cs
  2. 3
      backend/src/Squidex.Infrastructure/Validation/ValidationException.cs

4
backend/src/Squidex.Infrastructure/Queries/ClrValue.cs

@ -16,6 +16,8 @@ namespace Squidex.Infrastructure.Queries
{ {
public sealed class ClrValue public sealed class ClrValue
{ {
private static readonly Func<object?, string> ToStringDelegate = ToString;
public static readonly ClrValue Null = new ClrValue(null, ClrValueType.Null, false); public static readonly ClrValue Null = new ClrValue(null, ClrValueType.Null, false);
public object? Value { get; } public object? Value { get; }
@ -121,7 +123,7 @@ namespace Squidex.Infrastructure.Queries
{ {
if (Value is IList list) if (Value is IList list)
{ {
return $"[{string.Join(", ", list.OfType<object>().Select(ToString).ToArray())}]"; return $"[{string.Join(", ", list.OfType<object>().Select(ToStringDelegate).ToArray())}]";
} }
return ToString(Value); return ToString(Value);

3
backend/src/Squidex.Infrastructure/Validation/ValidationException.cs

@ -16,6 +16,7 @@ namespace Squidex.Infrastructure.Validation
[Serializable] [Serializable]
public class ValidationException : DomainException public class ValidationException : DomainException
{ {
private static readonly char[] TrimChars = { ' ', '.', ':' };
private static readonly List<ValidationError> FallbackErrors = new List<ValidationError>(); private static readonly List<ValidationError> FallbackErrors = new List<ValidationError>();
private readonly IReadOnlyList<ValidationError> errors; private readonly IReadOnlyList<ValidationError> errors;
@ -69,7 +70,7 @@ namespace Squidex.Infrastructure.Validation
{ {
var sb = new StringBuilder(); var sb = new StringBuilder();
sb.Append(summary.TrimEnd(' ', '.', ':')); sb.Append(summary.TrimEnd(TrimChars));
if (errors?.Count > 0) if (errors?.Count > 0)
{ {

Loading…
Cancel
Save