在我的SP(Sql Server 2005)中,我使用
引发错误Raiserror ('No Records Fetched' , 16 ,1)
我想在ASP.NET中捕获这个特殊错误..我该怎么做?
答案 0 :(得分:1)
应该这样做:
catch(SqlException ex) {
if(ex.Errors.Count > 0 && ex.Errors[0].Message == "No Records Fetched" && ex.Errors[0].Class == 16) {
// your error
}
}
但是,错误集合还可能包含低严重性print
语句消息和先前语句中的其他垃圾。您是否想要编写更复杂的过滤代码来消除它们取决于您。
答案 1 :(得分:0)
虽然Christian Hayter的答案是正确的,但另一种方法是使用sp_addmessage来创建您自己的客户错误编号,该编号与此问题具体相关。这将节省您必须解析错误消息。