Example #1
0
        public ITemplateSource Resolve(ITemplateKey key)
        {
            if (dictTmp.ContainsKey(key))
            {
                return(dictTmp[key]);
            }

            var viewPath = compiler.ResolvePath(key.Name);

            if (!compiler.IsExists(key.Name))
            {
                throw new ViewNotFoundException(key.Name, viewPath);
            }

            var viewContent = compiler.GetFileContent(viewPath);
            var result      = new LoadedTemplateSource(viewContent, viewPath);

            dictTmp.Add(key, result);

            return(Resolve(key));
        }