【问题标题】:display the particular error message in catch block在 catch 块中显示特定的错误消息
【发布时间】:2015-09-01 15:06:42
【问题描述】:
    try
    {
        DataTable dt = new DataTable();
        SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["myConnectionString"].ToString());
        SqlDataAdapter sda = new SqlDataAdapter("Select * from CustomeDetails", con);
        sda.Fill(dt);
        GridView1.DataSource = dt;
        GridView1.DataBind();
    }
    catch (SqlException d)
    {

       //Display Error Message
    }

如果尝试块中有任何错误,我如何显示错误消息 例如, 在我的代码中“无效的对象名称CustomeDetails”是一个错误。 同样的方式我必须显示出现在 try 块中的所有错误。 我为我的英语道歉。 注意:我必须在网页中显示所有这些错误消息。

【问题讨论】:

  • 这真的取决于你使用什么库来运行 sql 以及你访问的数据库,如果它是一个数据库,请提供更多细节......代码示例会有所帮助

标签: c# asp.net webpage


【解决方案1】:

您可以遍历 .Errors。可能有你需要的东西。

catch (SqlException ex)
{
  Console.WriteLine(ex.Message);
  DisplaySqlErrors(ex);
}


private static void DisplaySqlErrors(SqlException exception)
{
    for (int i = 0; i < exception.Errors.Count; i++)
    {
        Console.WriteLine("Index #" + i + "\n" +
        "Error: " + exception.Errors[i].ToString() + "\n");
    }
}

来自

【讨论】:

  • 谢谢迪博。它执行得很好。但是如何在网页中显示该错误消息。
  • 如果您在控制器中的 Action 方法中,请将其添加到您的视图模型中,或者将其添加到 ModelState.Errors 并显示在验证摘要中。我会编辑答案。
  • 这是一个什么样的网络项目?网页或 MVC。如果它回答了您的问题,您可以将其标记为答案吗?
  • 对于 MVC.NET,请查看这个问题 stackoverflow.com/questions/5739362/…
  • 它只是一个简单的网页,其中一个 Gridview 正在从数据库中调用一个表。
猜你喜欢
  • 1970-01-01
  • 2015-12-28
  • 1970-01-01
  • 2017-03-14
  • 1970-01-01
  • 1970-01-01
  • 2016-08-15
  • 1970-01-01
  • 2014-12-31
相关资源
最近更新 更多