停止处理请求并重定向到文件

时间:2011-08-27 09:02:10

标签: asp.net-mvc-2

嗨我有mvc2应用程序,我想在设置文件设置为离线时停止处理应用程序并向用户显示离线页面。

我已经决定在global.asax.cs开关中创建,它将检查Web应用程序是否处于脱机状态,待定结果将重定向到离线页面或继续处理页面。

当我尝试使用此代码运行它时,我收到错误:

  '/'应用程序中的服务器错误。此处不提供响应   上下文。描述:期间发生了未处理的异常   执行当前的Web请求。请查看堆栈跟踪   有关错误及其来源的更多信息   代码。

     

异常详细信息:System.Web.HttpException:响应不可用   在这种情况下。

     

来源错误:

     

第25行:if(!this.IsApplicationOnline())第26行:
  {第27行:Response.Redirect(“〜/ Content / offline.html”,   真正);第28行:}第29行:否则

     

源文件:* \ Global.asax.cs行:27

     

堆栈追踪:

     

[HttpException(0x80004005):此处无响应   context。] System.Web.HttpApplication.get_Response()+ 3002456
  easyccms.WebUI.MvcApplication.Application_Start()in   *的Global.asax.cs:27

我的代码如下

protected void Application_Start()
        {
            if (!this.IsApplicationOnline())
            {
                Response.Redirect("~/Content/offline.html", true);
            }
            else
            {
                AreaRegistration.RegisterAllAreas();
                log4net.Config.XmlConfigurator.Configure();
                RegisterRoutes(RouteTable.Routes);
            }
        }

1 个答案:

答案 0 :(得分:2)

好的,我找到了解决方案。

我必须指定它的响应因此:添加System.Web.HttpContext.Current

这是有效的。现在我只是假设可以有更多的httpcontext

System.Web.HttpContext.Current.Response.Redirect("~/Content/offline.html", true);