Class的ASP.NET Alert框

时间:2013-04-06 18:00:50

标签: asp.net

我正在使用“Service”类来连接数据库并将DataTable返回到我的ASP.NET页面。

我正在使用try / catch来捕获SqlExceptions。我想在Alert框中向用户显示异常文本。我该怎么做?

这是我在Service.class中的功能:

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web;

namespace Classes
{
    public class Service
    {
        private static DataTable getDataTable(string query)
        {
            DataTable dt = null;
            SqlConnection con = Dao.getConnection();
            if (Dao.checkConnection())
            {
                SqlDataAdapter da = new SqlDataAdapter(query, con);
                dt = new DataTable();
                try
                {
                    da.Fill(dt);
                }
                catch (SqlException ex)
                {
                //MessageBox.Show(ex.Message);
                Response.Write("<script>alert('This is Alert');</script>");
                //HttpContext.Current.Response.Write();
                //ScriptManager.RegisterClientScriptBlock(this, this.GetType(), " ","alert('ERROR')", true);
                //var clientScript = Page.ClientScript;
                //clientScript.RegisterClientScriptBlock(null, "AlertScript", "alert('ERROR')'", true);
                //System.Diagnostics.Debug.WriteLine("Database error: " + ex.Message);
            }
        }
        return dt;
    }

编译器给了我这个:     “响应”这个名称在当前上下文中不存在。

我想这很基本,但还没有找到答案。 评论的内容是我到目前为止所尝试的内容!

2 个答案:

答案 0 :(得分:1)

您可以使用System.Web.HttpContext.Current.Response作为您正在寻找的响应在继承自System.Web.UI.Page的类下可用

System.Web.HttpContext.Current.Response.Write("<script>alert('This is Alert');</script>")

答案 1 :(得分:0)

试试这个

ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('" + String Exception message + "');", true);