INameCreationService.ValidateName(String) Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar ett värde som anger om det angivna namnet är giltigt.
public:
void ValidateName(System::String ^ name);
public void ValidateName(string name);
abstract member ValidateName : string -> unit
Public Sub ValidateName (name As String)
Parametrar
- name
- String
Namnet som ska verifieras.
Exempel
Följande kodexempel innehåller ett exempel på INameCreationService.IsValidName metodimplementering som använder ett strängverifieringsschema som undersöker varje tecken i den angivna strängen för att avgöra om den angivna strängen är ett giltigt namn. Metoden genererar ett undantag om strängen inte är giltig.
// 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
Kommentarer
En implementering av INameCreationService kan ha regler som definierar parametrarna för giltiga namn. Den här metoden kan implementeras för att verifiera ett namn och framtvinga dessa regler.
Den här metoden liknar IsValidName, förutom att den här metoden genererar ett undantag om namnet är ogiltigt. På så sätt kan implementerare ange detaljerad information i undantagsmeddelandet.