我正在关注Asp .Net教程作为指南:
我创建了一个自定义错误,以防止在插入和更新时出现重复记录
Public Class DuplicateAgencyException
Inherits Exception
Public Sub New(ByVal message As String)
MyBase.New(message)
End Sub
End Class
我创建了一个验证方法,用于检查插入或更新时的重复:
Public Sub ValidateAgencyName(ByVal agency As agency_temp)
If Not IsNothing(agency) Then
Dim duplicateAgency As agency_temp = AgencyRepository.GetAgencyByName(agency.agency_name).FirstOrDefault()
If Not IsNothing(duplicateAgency) AndAlso duplicateAgency.agency_id <> agency.agency_id Then
Throw New DuplicateAgencyException(String.Format("Agency: {0} already exists.", duplicateAgency.agency_name))
End If
End If
End Sub
我运行单元测试来插入记录,并故意插入一个副本,它会抛出正确的错误。现在我需要使用显示此数据的ObjectDataSource来处理此错误,例如OnInserted和OnUpdated,但我甚至无法达到这一点。当我插入记录时,我得到错误助手告诉我DuplicateAgencyException未被用户代码处理。我需要试试......赶上吗? (我确实试过没有用)。
答案 0 :(得分:0)
我认为你需要在你提出的try catch块中提到的事件引用的方法中包装你的异常。您应该像现在这样包装现有代码
MethodName(params)
《
try 《 /// existing code
》
catch (ExceptionType ex) 《
/// error handling code
》
》
如果你发布你的事件处理代码和aspx我可以更具体。请原谅任何错误都写在我的手机上。