我按照这个 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 未被用户代码处理。我需要尝试...赶上吗?(我确实尝试过,但无济于事)。