代码之家  ›  专栏  ›  技术社区  ›  James Alexander

.NET sqlclient错误号枚举类型

  •  8
  • James Alexander  · 技术社区  · 15 年前

    我有一个针对sqlException类型的异常处理程序,我正在查看异常的sqlException.Number属性,以确定是否发生了死锁(1205)。我是currious,而不是编写sqleexception.number==1205,是否有一个枚举可以引用,它将产生类似于sqleexception.number==sqlexceptionnumbereum.deadlockvict的结果?

    由于潜在错误信息/数字的剪切量,这可能不可行,但认为值得询问。谢谢!

    2 回复  |  直到 14 年前
        1
  •  1
  •   Marc Gravell    15 年前

    我不知道。特别是,您可以使用 sp_addmessage ,并且每个SQL Server版本的错误都会发生变化(增长),因此,如果(例如)您在SQL Server 2008中使用.NET 2.0,则很快就会出现问题,因为您的数字可能会存在。

        2
  •  1
  •   tbreffni    15 年前

    不幸的是,我认为这是不可行的。如果运行以下查询,

    select * from sys.messages where language_id=1033 and severity between 11 and 16
    

    它生产六千多行。您可以编写一个小应用程序来解析表并生成一个C类,该类的const属性表示每个消息,但这可能不值得这样做。