using System.Reflection; using static StellaOps.Localization.T; namespace StellaOps.Evidence.Validation; internal static class SchemaLoader { public static string LoadSchema(string fileName) { var assembly = Assembly.GetExecutingAssembly(); var resourceName = assembly.GetManifestResourceNames() .FirstOrDefault(name => name.EndsWith(fileName, StringComparison.OrdinalIgnoreCase)); if (resourceName is null) { throw new InvalidOperationException(_t("common.evidence.schema_resource_not_found", fileName)); } using var stream = assembly.GetManifestResourceStream(resourceName); if (stream is null) { throw new InvalidOperationException(_t("common.evidence.schema_resource_not_available", resourceName)); } using var reader = new StreamReader(stream); return reader.ReadToEnd(); } }