時々ストアード・プロシージャー・ウィジットを書きましたRAISERROR()。 私のようなエンティティフレームワークを通してそれを実行します。エンティティ・フレームワークのデータベース・エラー処理
using(MyModelEntities conn = new MyModelEntities()) {
conn.MyStoredProcedure(input_p, output_p);
}
ストアドプロシージャ:
create procedure dbo.MyStoredProcedure(
@input nvarchar(255),
@output int out
)
as
begin
...
RAISERROR (N'My Exception....', 10, 1);
...
end
go
は、エラーに関する情報を取得する任意の機会はありますか?
Btw。私は速すぎた... RAISERRORは例外を返さない。 Sql Server Erorrsのみ...どうすればカスタムエラーを処理できますか? – nosbor
Try/CatchブロックでSqlExceptionのインスタンスをキャッチし、そのMesssageまたはErrorsプロパティを使用していますか?(http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlexception.aspx ) –