public override string ToString() { IPageMaker pageMaker = PageMaker; return(pageMaker == null?base.ToString() : string.Format(ObjectUtil.SysCulture, "PageMaker为{0}的ContentPage", pageMaker)); }
public static Task WritePage(IMetaData metaData, ISource source, IPageMaker pageMaker, IWebHandler handler) { PrepareSource(source, handler); OutputData outputData = CreateOutputData(metaData, source, handler.Style, handler); return(WritePage(metaData, source, pageMaker, handler, outputData)); }
public static Task WritePage(IMetaData metaData, ISource source, IPageMaker pageMaker, IWebHandler handler, OutputData outputData) { MetaDataUtil.SetMetaData(pageMaker, handler.Style, metaData); IContent content = pageMaker.WritePage(source, handler, outputData); return(WriteContent(handler.Request, handler.Response, content)); }
public IExceptionHandler CreateObject(params object[] args) { IPageMaker pageMaker = PageMaker.CreateObject(args); return(new PageMakerExceptionHandler(pageMaker) { LogException = Log }); }
public PageMakerInfo(Func <ISource, IInputData, OutputData, bool> function, IPageMaker pageMaker) { TkDebug.AssertArgumentNull(function, "function", null); TkDebug.AssertArgumentNull(pageMaker, "pageMaker", null); Function = function; PageMaker = pageMaker; }
public virtual void SetPageMaker(ISource source, IInputData input, OutputData outputData, IPageMaker pageMaker) { if (input.IsPost && (input.Style.Style == PageStyle.Update)) { PostPageMaker maker = pageMaker as PostPageMaker; if (maker != null) { maker.UseRetUrlFirst = true; } } }
public IEnumerable <PageMakerInfo> CreatePageMakers(IPageData pageData) { if (fPageMakers != null) { fPageMakers = new List <PageMakerInfo>(); if (fConfig.PageMakers != null) { foreach (var item in fConfig.PageMakers) { IPageMaker pageMaker = item.PageMaker.CreateObject(pageData); PageMakerInfo info = new PageMakerInfo(item.Condition.UseCondition, pageMaker); fPageMakers.Add(info); } } } return(fPageMakers); }
private Task DoAction() { var metaData = MetaData; ISource source = Source; TkDebug.AssertNotNull(source, $"当前{Style}下,Source为Null,请检查配置是否正确", this); using (source as IDisposable) { InternalWebUtil.PrepareSource(source, this); CheckFunctionRight(); PrepareRecordLog(source); OutputData outputData = InternalWebUtil.CreateOutputData(metaData, source, Style, this); Log(source, outputData); IPageMaker pageMaker = PageMaker; return(InternalWebUtil.WritePage(metaData, source, pageMaker, this, outputData)); } }
public IContent WritePage(ISource source, IPageData pageData, OutputData outputData) { IPageMaker pageMaker = null; switch (DataType) { case ContentDataType.Json: pageMaker = new JsonObjectPageMaker(); break; case ContentDataType.Xml: pageMaker = new XmlObjectPageMaker(null, null); break; default: TkDebug.ThrowImpossibleCode(this); break; } WebErrorResult error = outputData.Data as WebErrorResult; if (error != null) { return(pageMaker.WritePage(source, pageData, outputData)); } else { string url = null; if (UseRetUrlFirst) { url = pageData.QueryString["RetURL"]; } if (string.IsNullOrEmpty(url)) { url = GetDefaultUrl(source, pageData, outputData); } WebSuccessResult success = new WebSuccessResult(url) { AlertMessage = AlertMessage }; OutputData newData = OutputData.CreateToolkitObject(success); return(pageMaker.WritePage(source, pageData, newData)); } }
protected override void PrepareWritePage(IPageMaker pageMaker, ISource source, IPageData pageData, OutputData outputData) { base.PrepareWritePage(pageMaker, source, pageData, outputData); fModuleTemplate.SetPageMaker(source, pageData, outputData, pageMaker); RazorPageTemplatePageMaker templateMaker = pageMaker as RazorPageTemplatePageMaker; if (templateMaker != null) { var overrideItem = FindOverrideItem(pageData); templateMaker.SetConfig(overrideItem); return; } PostPageMaker postMaker = pageMaker as PostPageMaker; if (postMaker != null) { if (fOverridePostPageMakers == null) { return; } var overrideItem = (from item in fOverridePostPageMakers where MetaDataUtil.Equals(item.Style, pageData.Style) select item).FirstOrDefault(); if (overrideItem != null) { postMaker.SetProperties(overrideItem.DataType, overrideItem.DestUrl, overrideItem.CustomUrl); postMaker.UseRetUrlFirst = overrideItem.UseRetUrlFirst; if (overrideItem.AlertMessage != null) { postMaker.AlertMessage = overrideItem.AlertMessage.ToString(); } } } }
protected static void HandleException(ISource source, IPageMaker pageMaker, IWebHandler handler) { InternalWebUtil.WritePage(null, source, pageMaker, handler); }
public ErrorPageExceptionHandler(IPageMaker pageMaker) { TkDebug.AssertArgumentNull(pageMaker, "pageMaker", null); fPageMaker = pageMaker; }
public void Add(Func <ISource, IInputData, OutputData, bool> function, IPageMaker pageMaker) { int order = (fList.Count + 1) * 10; Add(order, function, pageMaker); }
public void Add(int order, Func <ISource, IInputData, OutputData, bool> function, IPageMaker pageMaker) { TkDebug.AssertArgumentNull(function, "function", this); TkDebug.AssertArgumentNull(pageMaker, "pageMaker", this); PageMakerInfo info = new PageMakerInfo(function, pageMaker, order); fList.Add(info); }
/// <summary> /// Initializes a new instance of the PageMakerInfo class. /// </summary> public PageMakerInfo(Func <ISource, IInputData, OutputData, bool> function, IPageMaker pageMaker, int order) { Function = function; PageMaker = pageMaker; Order = order; }
protected virtual void PrepareWritePage(IPageMaker pageMaker, ISource source, IPageData pageData, OutputData outputData) { }