Udostępnij za pośrednictwem


ValidationErrorCollection.HasErrors Właściwość

Definicja

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

Boolean

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.

Dotyczy