using System.Security.Cryptography; using System.Text; namespace SeaHaven.Services.Helpers { public static class WorkOrderExternalVersion { public static string Compute(params string?[] values) { var buffer = new StringBuilder(); foreach (var value in values) { var normalized = value ?? string.Empty; buffer.Append(normalized.Length).Append(':').Append(normalized).Append('|'); } return Convert.ToHexString( SHA256.HashData(Encoding.UTF8.GetBytes(buffer.ToString()))) .ToLowerInvariant(); } } }