我需要处理SQL与VB.Net抛出的异常。异常编号大于5000,这就是我需要添加自定义异常消息的原因。
这是抛出异常的sql存储过程的一部分:
IF (@ROWCOUNT <> 1 OR @CURRENT_ROWVERSION <> @RowVersion)
BEGIN
RAISERROR(59003,16,1, 'TCounter')
GOTO ABORT
END
这是我为SQL构建自定义消息的方式:
EXEC sp_addmessage
@msgnum = 59003,
@severity = 16,
@msgtext =
N'someone is working on the same operation right now , please try again in few seconds',
@lang = 'us_english';
EXEC sp_addmessage
@msgnum = 59003,
@severity = 16,
@msgtext =
N'يوجد شخص اخر يقوم بنفس العملية في نفس الوقت ,قم بإعادة المحاولة ',
@lang = 'arabic';
这是用于处理存储过程抛出的任何异常的VB.Net代码:
Try
_vs.UpdateTCounter(_key, tCounter)
Catch ex As Exception
LabelError.Text = ex.Message.ToString()
End Try
问题在于,我无法显示该消息的阿拉伯语版本。