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)); } }
public IContent WritePage(ISource source, IPageData pageData, OutputData outputData) { ExceptionSource exSource = source.Convert <ExceptionSource>(); string fileName = exSource.FileName; object result; if (string.IsNullOrEmpty(fileName)) { result = new WebErrorResult(exSource.Data.Exception.Message); } else { fileName = Path.GetFileNameWithoutExtension(fileName); string url = AppUtil.ResolveUrl("~/c/plugin/C/Exception?FileName=" + fileName); result = new WebExceptionResult(url); } string json = result.WriteJson(); return(new SimpleContent(ContentTypeConst.JSON, json)); }