В чем разница между SqlException и SqlExecutionException? - PullRequest
0 голосов
/ 17 августа 2010

В чем разница между SqlException и SqlExecutionException?

Я понимаю, что SqlException является исключением (или предупреждением), создаваемым самим SqlServer.

Но , в каких случаях выдается исключение SqlExecutionException ?

Почему это определено в пространстве имен System.Web.Management ?

Ответы [ 2 ]

2 голосов
/ 17 августа 2010

SqlException - это общее исключение в классе System.Data.SqlClient. Это представляет проблему, возникающую во время выполнения некоторой команды для базы данных SQL Server из класса SqlClient.

SqlExecutionException является частью набора классов управления и мониторинга работоспособности. Он используется, когда возникает проблема при установке или удалении службы для базы данных SQL Server, используемой классом SqlServices .

1 голос
/ 17 августа 2010

Они находятся в разных пространствах имен и генерируются разными классами. Исключение Sql находится в пространстве имен System.Data.SqlClient и генерируется классами в этом пространстве имен. SqlExecutionException находится в пространстве имен System.Web.Management и генерируется классами в этом пространстве имен. Вы не хотели бы, чтобы классы в именном пространстве System.Web.Management создавали исключения, существующие в пространстве имен System.Data.SqlClient, что могло бы привести к путанице при отладке, поэтому они создали новый класс исключений.

...