public Task HandleException(IWebHandler handler, WebBasePage page, Exception ex)
        {
            TkDebug.AssertArgument(ex is ErrorPageException, "ex", string.Format(ObjectUtil.SysCulture,
                                                                                 "此Handler只处理ErrorPageException,当前的Exception类型为{0}", ex.GetType()), this);

            ErrorPageSource source = new ErrorPageSource((ErrorPageException)ex);

            return(InternalWebUtil.WritePage(null, source, fPageMaker, handler));
        }
Exemplo n.º 2
0
        internal FileData(string fileName)
        {
            TkDebug.AssertArgumentNullOrEmpty(fileName, "fileName", null);
            TkDebug.AssertArgument(File.Exists(fileName), "fileName",
                                   string.Format(ObjectUtil.SysCulture, "{0}不存在", fileName), null);

            FileName    = fileName;
            fDependency = new FileInfoDependency(fileName);
            Data        = File.ReadAllBytes(fileName);
        }
Exemplo n.º 3
0
        public Task HandleException(IWebHandler handler, WebBasePage page, Exception ex)
        {
            TkDebug.AssertArgument(ex is ReLogOnException, "ex", string.Format(ObjectUtil.SysCulture,
                                                                               "此Handler只处理ReLogonException,当前的Exception类型为{0}", ex.GetType()), this);
            TkDebug.ThrowIfNoAppSetting();

            string     logOnUrl = WebAppSetting.WebCurrent.LogOnPath;
            UriBuilder builder  = new UriBuilder(logOnUrl);
            string     retUrl   = "RetUrl=" + HttpUtility.UrlEncode(ex.Message);

            if (builder.Query != null && builder.Query.Length > 1)
            {
                builder.Query = builder.Query.Substring(1) + "&" + retUrl;
            }
            else
            {
                builder.Query = retUrl;
            }
            handler.Response.Redirect(builder.Uri.ToString(), false);

            return(Task.FromResult(0));
        }