public WebSourceXsltPageMaker(WebSourceXsltPageMakerConfig config) { JsonObjectPageMaker objectMaker = new JsonObjectPageMaker { IsEncrypt = WebAppSetting.WebCurrent.OutputEncrypt, IsGZip = WebAppSetting.WebCurrent.OutputGZip }; Add((source, pageData, outputData) => pageData.IsPost, objectMaker); string xsltFile = FileUtil.GetRealFileName(config.XsltFile, FilePathPosition.Xml); SimpleXsltPageMaker xsltMaker = new SimpleXsltPageMaker(xsltFile, config.UseXsltArgs, ContentTypeConst.HTML, Encoding.UTF8); Add((source, pageData, outputData) => !pageData.IsPost, xsltMaker); }
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)); } }