protected string GetImagesFolder(bool bootImagesfolder) { return(this.FormatURIForCDN(ResourcePathBuilderUtilities.GetBootImageResourcesRelativeFolderPath(ResourcePathBuilderUtilities.GetResourcesRelativeFolderPath(this.VersionString), DefaultPageBase.IsRtl), bootImagesfolder)); }
protected string InlineImage(string fileName) { string text = Path.Combine(Path.Combine(FolderConfiguration.Instance.RootPath, ResourcePathBuilderUtilities.GetBootImageResourcesRelativeFolderPath(ResourcePathBuilderUtilities.GetResourcesRelativeFolderPath(this.VersionString), DefaultPageBase.IsRtl)), fileName); DateTime lastWriteTimeUtc; try { lastWriteTimeUtc = File.GetLastWriteTimeUtc(text); } catch { return(this.BootImagesFolder + "/" + fileName); } Tuple <string, DateTime> tuple; lock (DefaultPageBase.inlineImages) { if (!DefaultPageBase.inlineImages.TryGetValue(text, out tuple) || tuple.Item2 < lastWriteTimeUtc) { tuple = Tuple.Create <string, DateTime>("data:image/" + Path.GetExtension(fileName).Substring(1) + ";base64," + Convert.ToBase64String(File.ReadAllBytes(text)), lastWriteTimeUtc); DefaultPageBase.inlineImages[text] = tuple; } } return(tuple.Item1); }