我第一次使用ValidationProvider控件。我試圖模仿我在EntityQuickStart解決方案示例中看到的功能,並且EntLib安裝附帶了有限的成功。企業庫4.0 ValidationProvider自我驗證問題
雖然我是能夠得到形式ErrorProvider控件圖標出現基於與驗證裝飾BO屬性的業務對象驗證屬性,如:
<NotNullValidator(MessageTemplate:="Gender must be specified.", RuleSet:="MyRule", Tag:="Gender")> _
Public Shadows Property Gender() As String
Get
Return MyBase.Gender
End Get
Set(ByVal value As String)
MyBase.Gender = value
End Set
End Property
但是,如果我想編輯添加到「 SelfValidation「方法,我如何將結果綁定到表單控件?
(In Self Validation)
If Me.Attornet s Nothing Then
Dim result As New ValidationResult("Attorney selection is required", Me, Nothing, Nothing, Nothing)
results.AddResult(result)
End If
,或者必須通過我自己的**自定義驗證創建「,然後使用它的類型來裝飾業務對象屬性
編輯:??
如果ValidationProvider控制並不打算用於交叉控制驗證像這樣的:如果用戶選擇的單選按鈕組中對應於商業選項屬性Customer.DoYouSmokeCrack由於布爾則「是」選項
應使用ErrorProvider圖標標記txtHowMuch控件,指示該字段是有條件需要的。
我現在正在這樣做的方式是在自我驗證塊中完成此操作,並且當我將一個ValidationResult對象添加到集合中時,我將Key屬性設置爲「Explanation」,以便GUI可以使用它來手動映射到有問題的屏幕控制。
有沒有更標準/更有效的方法來做到這一點?