ValidationErrorCollection.HasErrors Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Wskazuje, czy kolekcja zawiera ValidationError obiekty wskazujące błędy kompilacji.
public:
property bool HasErrors { bool get(); };
public bool HasErrors { get; }
member this.HasErrors : bool
Public ReadOnly Property HasErrors As Boolean
Wartość właściwości
true
jeśli działanie wygenerowało błędy walidacji; w przeciwnym razie , false
.
Przykłady
W poniższym przykładzie pokazano, jak utworzyć kolekcję błędów walidacji i manipulować nią w ramach niestandardowej procedury weryfikacji.
Ten przykładowy kod jest częścią przykładowego zestawu SDK wysyłania wiadomości e-mail i pochodzi z pliku SendMailActivity.cs. Aby uzyskać więcej informacji, zobacz Działanie wysyłania poczty.
public class SendEmailValidator : System.Workflow.ComponentModel.Compiler.ActivityValidator
{
// Define private constants for the Validation Errors
private const int InvalidToAddress = 1;
private const int InvalidFromAddress = 2;
private const int InvalidSMTPPort = 3;
//customizing the default activity validation
public override ValidationErrorCollection ValidateProperties(ValidationManager manager, object obj)
{
// Create a new collection for storing the validation errors
ValidationErrorCollection validationErrors = base.ValidateProperties(manager, obj);
SendEmailActivity activity = obj as SendEmailActivity;
if (activity != null)
{
// Validate the Email and SMTP Properties
this.ValidateEmailProperties(validationErrors, activity);
this.ValidateSMTPProperties(validationErrors, activity);
}
return validationErrors;
}
Public Class SendEmailValidator
Inherits System.Workflow.ComponentModel.Compiler.ActivityValidator
' Define private constants for the Validation Errors
Private Const InvalidToAddress As Integer = 1
Private Const InvalidFromAddress As Integer = 2
Private Const InvalidSMTPPort As Integer = 3
' customizing the default activity validation
Public Overrides Function ValidateProperties(ByVal manager As ValidationManager, ByVal obj As Object) As ValidationErrorCollection
' Create a new collection for storing the validation errors
Dim validationErrors As New ValidationErrorCollection()
Dim activity As SendEmailActivity = TryCast(obj, SendEmailActivity)
If activity IsNot Nothing Then
' Validate the Email and SMTP Properties
Me.ValidateEmailProperties(validationErrors, activity)
Me.ValidateSMTPProperties(validationErrors, activity)
' Raise an exception if we have ValidationErrors
If validationErrors.HasErrors Then
Dim validationErrorsMessage As String = String.Empty
For Each validationError As ValidationError In validationErrors
validationErrorsMessage += _
String.Format("Validation Error: Number 0} - '1}' \n", _
validationError.ErrorNumber, validationError.ErrorText)
Next
' Throw a new exception with the validation errors.
Throw New InvalidOperationException(validationErrorsMessage)
End If
End If
Return validationErrors
End Function
Uwagi
Jeśli element Activity wygenerował ostrzeżenie, ostrzeżenie jest uznawane za błąd w kontekście tej właściwości.