1

因此,我在存储过程中遇到异常,其错误代码为 547。我在 sql server 中创建了一个数据图,在其中定义了关系。当我运行任何删除 SP 时,我收到一条错误消息,提示 FK 冲突,即正确的。我的问题是如何在我的 C# 代码中获取数字(即 547)。

catch (Exception ex)
        {

            lblMessage.Text = ex.Message;
        }

我有什么方法可以在我的 C# 代码中获取这个 547 代码。?喜欢

 ex.somethin (which gives me the error message's code).
4

4 回答 4

4

尝试这个。

    try
    {

    }
    catch(SqlException ex)
    {
        lblMessage.Text = ex.Message;
    }
于 2013-08-19T06:49:02.923 回答
2

可以使用多个捕获:

 try
        {

        }
      catch(SqlException sqlex)
        {
          if(sqlex.Number ==547)
               {
                   //code
               }
        }
        catch(Exception ex)
        {
            lblMessage.Text = ex.Message;
        }
于 2013-08-19T07:17:25.060 回答
1

有关详细信息http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlexception.aspx

 try
 {
   ... 
   ...
 }
 catch(SqlException ex)
 {
    lblMessage.Text = ex.Message;
 }
于 2013-08-19T07:27:42.213 回答
1

您可以尝试使用 Elmah 库(错误记录模块和处理程序)

这是有关如何使用它的分步教程:http ://www.asp.net/web-forms/tutorials/deployment/deploying-web-site-projects/logging-error-details-with-elmah-cs

于 2013-08-19T06:47:05.703 回答