共用方式為


INameCreationService.ValidateName(String) 方法

定義

取得值,指出指定名稱是否有效。

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

參數

name
String

要驗證的名稱。

範例

下列程式代碼範例提供一個 INameCreationService.IsValidName 範例方法實作,這個實作會使用字元串驗證配置來檢查指定字串的每個字元,以判斷指定的字串是否為有效的名稱。 如果字串無效,方法會擲回例外狀況。

// 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

備註

的實作 INameCreationService 可以有規則來定義有效名稱的參數。 這個方法可以實作來驗證名稱,並強制執行這些規則。

這個方法類似於 IsValidName,不同之處在於,如果名稱無效,這個方法會擲回例外狀況。 這可讓實作者在例外狀況訊息中提供詳細資訊。

適用於