如何在SQL Server关闭时显示错误页面?

时间:2013-12-18 18:01:26

标签: html asp.net sql-server

我的公司有一个多年前在ASP.NET中创建的OLD网页。我从未使用过ASP.NET,我真的很困惑我在数据库关闭时如何显示错误。该网站使用HMTL和asp从文本框中获取信息并将其存储在数据库中。连接信息位于web.config文件中。如果数据库没有响应,我将如何不显示某个asp页面,而是显示错误消息?

有人能引导我走上正确的道路吗?

我使用过一些PHP,JavaScript,Jquery,MySQL。然而,这对我来说是全新的。

此外,这是我修改网页时的临时修复,但我们必须显示一些内容,以便客户知道它无法正常运行。所以我要承受很大的压力来解决这个问题,而且我很无能为力。

1 个答案:

答案 0 :(得分:0)

在您的母版页(如果您有一个,否则在每个页面中)Page_Load方法,添加...

if(!DatabaseConnectivity.IsDatabaseUp())
{
   Response.Redirect("~/DatabaseDown.aspx");
}

将DatabaseConnectivity.cs类添加到App_Code文件夹中。在此类中添加一个名为IsDatabaseUp()的函数。在该函数中,对数据库执行简单查询。如果出现异常,可以认为数据库已关闭并返回false。

public class DatabaseConnectivity
{
   public static bool IsDatabaseUp()
   {
      try
      {
         SqlDataSource ds=new SqlDataSource();
         ds.ConnectionString=System.Web.Configuration.WebConfigurationManager.ConnectionStrings["MYCONNSTRINGNAME"].ToString();
         ds.SelectCommand="select count(*) from sys.Tables";
         ds.Select(DataSourceSelectArguments.Empty);
         return true;
      }
      catch(Exception)
       {
          return false;
       }
   }
}

将DatabaseDown.aspx文件添加到您网站的根目录,并附上网站已关闭的通知。