コード例 #1
0
        public static string GetBundlesPath(IRequestHandler requestHandler)
        {
            if (string.IsNullOrEmpty(PathManager.bundlesPath))
            {
                PathManager.bundlesPath = PathManager.GetContentRootPath(requestHandler) + "\\Bundles";
            }

            return(PathManager.bundlesPath);
        }
コード例 #2
0
        private static string ConcatFiles(IRequestHandler requestHandler, IEnumerable <string> files)
        {
            StringBuilder result = new StringBuilder();

            foreach (string file in files)
            {
                result.AppendLine(File.ReadAllText(PathManager.GetContentRootPath(requestHandler) + "\\" + file));
            }

            return(result.ToString());
        }
コード例 #3
0
        public static string GetViewsPath(IRequestHandler requestHandler, string subdirectory)
        {
            if (string.IsNullOrEmpty(PathManager.viewsPath))
            {
                PathManager.viewsPath = PathManager.GetContentRootPath(requestHandler) + "\\Views";
            }

            if (string.IsNullOrEmpty(subdirectory))
            {
                return(PathManager.viewsPath);
            }

            return(PathManager.viewsPath + "\\" + subdirectory);
        }
コード例 #4
0
        public static void RebuildBundle(IRequestHandler requestHandler, string bundleFilename)
        {
            try
            {
                dynamic bundle     = JsonConvert.DeserializeObject(File.ReadAllText(PathManager.GetBundlePath(requestHandler, bundleFilename)));
                string  outputFile = bundle.outputFile;
                IEnumerable <string> inputFiles = bundle.inputFiles.ToObject <IEnumerable <string> >();
                string        input             = BandleManager.ConcatFiles(requestHandler, inputFiles);
                UgliflyResult result            = outputFile.EndsWith(".css") ? Uglify.Css(input) : outputFile.EndsWith(".js") ? Uglify.Js(input) : default(UgliflyResult);

                if (!result.HasErrors)
                {
                    File.WriteAllText(PathManager.GetContentRootPath(requestHandler) + "\\" + outputFile, result.Code);
                }
            }

            catch { }
        }