/// <summary> /// 返回模板内容 /// </summary> /// <param name="templateId"></param> /// <param name="pageFunc">对模板处理前操作,可以添加数据对象</param> public static string Require(string templateId, TemplatePageHandler pageFunc) { using (CmsTemplates tpl = new CmsTemplates()) { TemplatePage page = new TemplatePage(templateId); //if (data != null) //{ // page.AddDataObject(data); //} page.TemplateHandleObject = tpl; page.OnPreInit += PreHandler; page.OnPreRender += CompliedTemplate; //注册扩展的模板解析事件 if (OnPreRender != null) { page.OnPreRender += OnPreRender; } if (pageFunc != null) { pageFunc(page); } return(page.ToString()); } }
/// <summary> /// 返回模板内容 /// </summary> /// <param name="templateName"></param> /// <param name="pageFunc">对模板处理前操作,可以添加数据对象</param> public static string Require(string templateName, TemplatePageHandler pageFunc) { var page = Cms.Template.GetTemplate(templateName); RegisterEventHandlers(page); // 注册扩展的模板解析事件 if (_onPreRender != null) { page.OnPreRender += _onPreRender; } pageFunc?.Invoke(page); return(page.Compile()); }
/// <summary> /// 显示400页面 /// </summary> /// <returns></returns> public void RenderNotfound(string message, TemplatePageHandler handler) { string html = null; try { var pageName = $"/{CurrentSite.Tpl}/not_found"; var tpl = Cms.Template.GetTemplate(pageName); handler?.Invoke(tpl); html = tpl.Compile(); } catch { html = "File not found!"; } this._context.Response.StatusCode(404); this._context.Response.WriteAsync(html); }
/// <summary> /// 返回模板内容 /// </summary> /// <param name="templateId"></param> /// <param name="pageFunc">对模板处理前操作,可以添加数据对象</param> public static string Require(string templateId, TemplatePageHandler pageFunc) { var page = Cms.Template.GetTemplate(templateId); var context = HttpHosting.Context; using (var tpl = new CmsTemplateImpl(context)) { page.TemplateHandleObject = tpl; page.OnPreInit += PreHandler; page.OnPreRender += CompliedTemplate; } //注册扩展的模板解析事件 if (OnPreRender != null) { page.OnPreRender += OnPreRender; } pageFunc?.Invoke(page); return(page.ToString()); }
/// <summary> /// 显示400页面 /// </summary> /// <returns></returns> public void RenderNotfound(string message, TemplatePageHandler handler) { Response.StatusCode = 404; string html = null; try { TemplatePage tpl = new TemplatePage(String.Format("/{0}/notfound", this.CurrentSite.Tpl)); if (handler != null) { handler(tpl); } tpl.Render(); return; } catch { html = "File not found!"; } Response.Write(html); }
/// <summary> /// 返回模板内容 /// </summary> /// <param name="templateId"></param> /// <param name="pageFunc">对模板处理前操作,可以添加数据对象</param> public static string Require(string templateId,TemplatePageHandler pageFunc) { using (CmsTemplates tpl = new CmsTemplates()) { TemplatePage page = new TemplatePage(templateId); //if (data != null) //{ // page.AddDataObject(data); //} page.TemplateHandleObject = tpl; page.OnPreInit += PreHandler; page.OnPreRender += CompliedTemplate; //注册扩展的模板解析事件 if (OnPreRender != null) page.OnPreRender += OnPreRender; if (pageFunc != null) pageFunc(page); return page.ToString(); } }