Exemple #1
0
        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));
        }