繁体   English   中英

域或业务逻辑层中的错误处理(Vb.Net)

[英]Error Handling in Domain or Business Logic Layer (Vb.Net)

我正在为我的ASP.net项目使用3层层。 我在数据库“PaymentTypes”中有一个表,我在列PaymentTypeEN上放置了检查约束,因此用户不会在此列中输入重复值。 我的域层(VB.net)中有代码。

_

Public Function PaymentTypes_DML(ByVal PaymentTypeID As Long?, ByVal PaymentTypeEN As String, ByVal PaymentType As String, _
ByVal UserID As Long?, ByVal ActionCode As String) As Long
Dim iPaymentTypeID As Long? = PaymentTypeID
Dim sPaymentTypeEN As String = PaymentTypeEN
Dim sPaymentType As String = PaymentType
Dim iUserID As Long? = UserID
Dim sActionCode As String = ActionCode
Dim result As Long
result = CLng(PaymentTypesAdapter.DML(iPaymentTypeID, sPaymentTypeEN, sPaymentType, iUserID, sActionCode))
Return result
End Function

当用户在“PaymentTypeEN”列中输入重复记录时,在表层(ASP.net表单)上没有发生什么,ASP.net页面显示丑陋的错误............我想通过向用户显示一些错误来处理这些错误在这种情况下预先定义的消息... .like ......“你不能输入重复的值,请输入其他一些值。”.....................。我如何处理ObjectDataSource的Domain Layer或Presentation层中的错误。

验证通常必须在多个层次上重复。 将其主要放在业务层中有很大的优势。 这允许ui中的验证使用业务逻辑进行独立于DAO层的验证。

这确实意味着您的检查约束可能无关紧要,因为您无论如何都必须在业务层中复制它的功能。

您可能必须创建一个调用数据层的validate()方法,搜索具有相关PaymentTypeEN的其他记录。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM