public CustomError CreateCustomError(CustomErrorsRedirectType customErrorsRedirectType) { if (customErrorsRedirectType == CustomErrorsRedirectType.NoPage) { return null; } string formatString; switch (customErrorsRedirectType) { case CustomErrorsRedirectType.StaticErrorPage: formatString = StaticPageFormatString; break; case CustomErrorsRedirectType.MvcErrorPage: formatString = MvcPageFormatString; break; case CustomErrorsRedirectType.AspxErrorPage: formatString = AspxPageFormatString; break; default: throw new ArgumentOutOfRangeException("customErrorsRedirectType"); } var redirect = string.Format(formatString, _statusCode); return new CustomError(_statusCode, redirect); }
public void ReadSection() { Mode = _customErrorsSection.Mode.FromSystemCustomErrorsMode(); RedirectMode = _customErrorsSection.RedirectMode.FromSystemCustomErrorsRedirectMode(); NotFoundErrorRedirect = _notFoundError.ParseCustomErrorsRedirectType(_customErrorsSection.Errors); ForbiddenErrorRedirect = _forbiddenError.ParseCustomErrorsRedirectType(_customErrorsSection.Errors); ServerErrorRedirect = _serverError.ParseCustomErrorsRedirectType(_customErrorsSection.Errors); }
public void UpdateSection( CustomErrorsMode mode, CustomErrorsRedirectMode redirectMode, CustomErrorsRedirectType notFoundErrorRedirect, CustomErrorsRedirectType forbiddenErrorRedirect, CustomErrorsRedirectType serverErrorRedirect) { Mode = mode; RedirectMode = redirectMode; NotFoundErrorRedirect = notFoundErrorRedirect; ForbiddenErrorRedirect = forbiddenErrorRedirect; ServerErrorRedirect = serverErrorRedirect; _customErrorsSection.Mode = Mode.ToSystemCustomErrorsMode(); _customErrorsSection.RedirectMode = RedirectMode.ToSystemCustomErrorsRedirectMode(); SetCustomErrorsSectionErrors( _notFoundError.CreateCustomError(NotFoundErrorRedirect), _forbiddenError.CreateCustomError(ForbiddenErrorRedirect), _serverError.CreateCustomError(ServerErrorRedirect)); }