是否有可能让实体框架在抛出异常时包含SQL命令?

时间:2010-01-29 12:52:13

标签: .net entity-framework exception exception-handling

我的问题是,当我从实体框架中获得SQL异常时(例如,由于null值不允许为null),有时很难确定引用哪个属性,以及为什么它是空的。

现在我知道我可以设置SQL跟踪并记录它,这将为我提供所需的信息,但这意味着我必须在我开启登录后重新创建问题,这并不总是很简单。

理想情况下,我希望能够让实体框架自动包含在抛出SQL异常时导致问题的实际SQL语句。

这可能吗?

2 个答案:

答案 0 :(得分:1)

您是否查看了SqlException的Errors属性?它将包含一个SqlErrors集合,它具有属性Procedure,它将声明执行错误的函数的名称

答案 1 :(得分:0)

如果抛出了sql异常,那么它将包含detsil,并确保抛出new ex不会消除任何异常;或者抛出ex;,在catch use throw中,这不会抑制异常的任何部分,你将得到详细的异常。 一旦我希望它有所帮助,这就是问题。