コード例 #1
0
        /// <summary>
        /// 레이아웃 템플릿을 적용한 페이지를 반환한다.
        /// </summary>
        /// <param name="renderContent">레이아웃 템플릿에 적용할 컨텐츠</param>
        /// <returns></returns>
        public string ApplyLayoutTemplate(string renderContext, TemplateVariablesModel templateVariables)
        {
            Dictionary <string, string> layoutHeader = new Dictionary <string, string>();

            return(ApplyTemplate("_layout.html", new TemplateVariablesModel
            {
                Content = renderContext,
                Site = templateVariables.Site,
                Template = templateVariables.Template,
            }, out layoutHeader));
        }
コード例 #2
0
        /// <summary>
        /// 템플릿을 적용한 페이지를 반환한다.
        /// </summary>
        /// <param name="templateName">템플릿 명</param>
        /// <param name="renderContent">템플릿에 적용할 컨텐츠</param>
        /// <returns></returns>
        public string ApplyTemplate(string templateName, TemplateVariablesModel templateVariables, out Dictionary <string, string> templateHeader)
        {
            TemplateModel templateModel = LoadTemplate(templateName);

            Template template = Template.Parse(templateModel.TemplateBody);

            templateHeader = templateModel.TemplateHeader;

            Hash hash = Hash.FromAnonymousObject(new
            {
                site     = templateVariables.Site,
                page     = templateVariables.Page,
                content  = templateVariables.Content,
                template = templateVariables.Template
            });

            return(template.Render(hash));
        }