我下面这个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未被用户代码处理。我需要一个尝试......赶上那里吗? (我曾尝试过,但无济于事)。
这是一个提示吗? – 2012-07-26 19:16:25