Partager via


IIdentifierCreationService.ValidateIdentifier(Activity, String) Méthode

Définition

Fournit un mécanisme pour tester si un identificateur est unique dans Activity.

public:
 void ValidateIdentifier(System::Workflow::ComponentModel::Activity ^ activity, System::String ^ identifier);
public void ValidateIdentifier (System.Workflow.ComponentModel.Activity activity, string identifier);
abstract member ValidateIdentifier : System.Workflow.ComponentModel.Activity * string -> unit
Public Sub ValidateIdentifier (activity As Activity, identifier As String)

Paramètres

activity
Activity

Activity par rapport auquel tester l'identificateur.

identifier
String

Identificateur dont il faut tester la validité.

Exemples

L'exemple suivant montre une implémentation du IIdentifierCreationService. Ce service garantit que chacun des identificateurs utilisés dans le workflow actif est unique.

void IIdentifierCreationService.ValidateIdentifier(Activity activity, string identifier)
{
    if (identifier == null)
        throw new ArgumentNullException("identifier");
    if (activity == null)
        throw new ArgumentNullException("activity");

    if (activity.Name.ToLower().Equals(identifier.ToLower()))
        return;

    ArrayList identifiers = new ArrayList();
    Activity rootActivity = GetRootActivity(activity);
    identifiers.AddRange(GetIdentifiersInCompositeActivity(rootActivity as CompositeActivity));
    identifiers.Sort();
    if (identifiers.BinarySearch(identifier.ToLower(), StringComparer.OrdinalIgnoreCase) >= 0)
        throw new ArgumentException(string.Format("Duplicate Component Identifier {0}", identifier));
}
Sub ValidateIdentifier(ByVal activity As Activity, ByVal identifier As String) Implements IIdentifierCreationService.ValidateIdentifier
    If identifier Is Nothing Then
        Throw New ArgumentNullException("identifier")
    End If
    If activity Is Nothing Then
        Throw New ArgumentNullException("activity")
    End If
    If activity.Name.ToLower().Equals(identifier.ToLower()) Then
        Return
    End If
    Dim identifiers As New ArrayList()
    Dim rootActivity As Activity = GetRootActivity(activity)
    identifiers.AddRange(GetIdentifiersInCompositeActivity(CType(rootActivity, CompositeActivity)))
    identifiers.Sort()
    If identifiers.BinarySearch(identifier.ToLower(), StringComparer.OrdinalIgnoreCase) >= 0 Then
        Throw New ArgumentException(String.Format("Duplicate Component Identifier 0}", identifier))
    End If
End Sub

Remarques

Utilisez ValidateIdentifier afin de vous assurer qu'un identificateur est unique et mis en forme correctement pour être utilisé dans un Activity spécifié.

S’applique à