static CdnScriptTagTests() { var packages = MondoHelpers.GetNupkgFiles(); _scriptTags = new List <ScriptTag>(); _linkTags = new List <LinkTag>(); foreach (var packagePath in packages) { var tags = GetTags(packagePath); _scriptTags.AddRange(tags.scripts); _linkTags.AddRange(tags.links); } }
private static string GetFileContentFromArchive(ScriptTag scriptTag, string relativeFilePath) { var file = MondoHelpers.GetNupkgFiles().Single(f => f.EndsWith(scriptTag.FileName)); using (var zip = new ZipArchive(File.OpenRead(file), ZipArchiveMode.Read, leaveOpen: false)) { var entry = zip.Entries .Where(e => e.FullName.EndsWith(relativeFilePath, StringComparison.OrdinalIgnoreCase)) .FirstOrDefault(); if (entry != null) { using (var reader = new StreamReader(entry.Open())) { return(reader.ReadToEnd()); } } } return(null); }