我的公司有一个多年前在ASP.NET中创建的OLD网页。我从未使用过ASP.NET,我真的很困惑我在数据库关闭时如何显示错误。该网站使用HMTL和asp从文本框中获取信息并将其存储在数据库中。连接信息位于web.config文件中。如果数据库没有响应,我将如何不显示某个asp页面,而是显示错误消息?
有人能引导我走上正确的道路吗?
我使用过一些PHP,JavaScript,Jquery,MySQL。然而,这对我来说是全新的。
此外,这是我修改网页时的临时修复,但我们必须显示一些内容,以便客户知道它无法正常运行。所以我要承受很大的压力来解决这个问题,而且我很无能为力。
答案 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文件添加到您网站的根目录,并附上网站已关闭的通知。