コード例 #1
0
        private string CompressCss(IEnumerable <IPath> cssFiles)
        {
            StringBuilder sb = new StringBuilder();

            foreach (var file in cssFiles)
            {
                string content;
                var    dynamicResource = DynamicClientResourceFactory.Default.ResolveProvider(file.PhysicalPath);

                if (dynamicResource != null)
                {
                    content = dynamicResource.Parse(file.VirtualPath);
                }
                else
                {
                    content = IOUtility.ReadAsString(file.PhysicalPath);
                }
                sb.AppendFormat("{0}\n", CSSMinify.Minify(Url, file.VirtualPath, Request.Url.AbsolutePath, content));
            }
            return(sb.ToString());
        }
コード例 #2
0
        public static IHtmlString ExternalResources(this HtmlHelper htmlHelper, RouteValueDictionary htmlAttributes, params string[] files)
        {
            string key = Cryptor.EncryptMD5(string.Join(";", files));

            if (ResourceRoutting.list.Contains(key))
            {
                return(new HtmlString(""));
            }

            string output = key;

            // Combine
            using (StreamWriter sw = new StreamWriter(output))
            {
                foreach (var fileInfo in files)
                {
                    string content = System.IO.File.ReadAllText(htmlHelper.ViewContext.HttpContext.Server.MapPath(fileInfo));


                    content = CSSMinify.Minify(null, fileInfo, "", content);
                    sw.WriteLine(content.Trim());
                }
            }
            // Combine
            using (StreamWriter sw = new StreamWriter(output))
            {
                foreach (var fileInfo in files)
                {
                    string content = System.IO.File.ReadAllText(htmlHelper.ViewContext.HttpContext.Server.MapPath(fileInfo));


                    content = CSSMinify.Minify(null, fileInfo, "", content);
                    sw.WriteLine(content.Trim());
                }
            }
            return(new HtmlString(""));
        }
コード例 #3
0
        /// <summary>
        /// Minifies CSS file
        /// </summary>
        /// <param name="css">css string to minify</param>
        /// <returns>minified css string</returns>
        public string CompressCss(string css)
        {
            ICompress min = new CSSMinify();

            return(min.Compress(css));
        }