Udostępnij za pośrednictwem


INameCreationService.ValidateName(String) Metoda

Definicja

Pobiera wartość wskazującą, czy określona nazwa jest prawidłowa.

public:
 void ValidateName(System::String ^ name);
public void ValidateName (string name);
abstract member ValidateName : string -> unit
Public Sub ValidateName (name As String)

Parametry

name
String

Nazwa do zweryfikowania.

Przykłady

Poniższy przykładowy kod zawiera przykładową INameCreationService.IsValidName implementację metody, która używa schematu weryfikacji ciągu, który sprawdza każdy znak określonego ciągu w celu określenia, czy określony ciąg jest prawidłową nazwą. Metoda zgłasza wyjątek, jeśli ciąg jest nieprawidłowy.

// Throws an exception if the specified name does not contain 
// all valid character types.
virtual void ValidateName( String^ name )
{
   for ( int i = 0; i < name->Length; i++ )
   {
      Char ch = name[ i ];
      UnicodeCategory uc = Char::GetUnicodeCategory( ch );
      switch ( uc )
      {
         case UnicodeCategory::UppercaseLetter:
         case UnicodeCategory::LowercaseLetter:
         case UnicodeCategory::TitlecaseLetter:
         case UnicodeCategory::DecimalDigitNumber:
            break;

         default:
            throw gcnew Exception( String::Format( "The name '{0}' is not a valid identifier.", name ) );
      }
   }
}
// Throws an exception if the specified name does not contain 
// all valid character types.
public void ValidateName(string name)
{
    for(int i = 0; i < name.Length; i++)
    {
        char ch = name[i];
        UnicodeCategory uc = Char.GetUnicodeCategory(ch);
        switch (uc) 
        {
            case UnicodeCategory.UppercaseLetter:       
            case UnicodeCategory.LowercaseLetter:     
            case UnicodeCategory.TitlecaseLetter:                                                  
            case UnicodeCategory.DecimalDigitNumber:                         
                break;
            default:
                throw new Exception("The name '"+name+"' is not a valid identifier.");                
        }
    }
}
' Throws an exception if the specified name does not contain 
' all valid character types.
Public Sub ValidateName(ByVal name As String) Implements INameCreationService.ValidateName
    Dim i As Integer
    For i = 0 To name.Length - 1
        Dim ch As Char = name.Chars(i)
        Dim uc As UnicodeCategory = [Char].GetUnicodeCategory(ch)
        Select Case uc
            Case UnicodeCategory.UppercaseLetter, UnicodeCategory.LowercaseLetter, UnicodeCategory.TitlecaseLetter, UnicodeCategory.DecimalDigitNumber
            Case Else
                Throw New Exception("The name '" + name + "' is not a valid identifier.")
        End Select
    Next i
End Sub

Uwagi

Implementacja INameCreationService może zawierać reguły definiujące parametry prawidłowych nazw. Tę metodę można zaimplementować, aby zweryfikować nazwę i wymusić te reguły.

Ta metoda jest podobna do IsValidNamemetody , z tą różnicą, że ta metoda zgłasza wyjątek, jeśli nazwa jest nieprawidłowa. Umożliwia to implementatorom podanie szczegółowych informacji w komunikacie o wyjątku.

Dotyczy