NameOf 运算符 - Visual Basic

NameOf 运算符获取变量、类型或成员的名称作为字符串常量:

Console.WriteLine(NameOf(System.Collections.Generic))  ' output: Generic
Console.WriteLine(NameOf(List(Of Integer)))  ' output: List
Console.WriteLine(NameOf(List(Of Integer).Count))  ' output: Count
Console.WriteLine(NameOf(List(Of Integer).Add))  ' output: Add

Dim numbers As New List(Of Integer) From { 1, 2, 3 }
Console.WriteLine(NameOf(numbers))  ' output: numbers
Console.WriteLine(NameOf(numbers.Count))  ' output: Count
Console.WriteLine(NameOf(numbers.Add))  ' output: Add

如前面的示例所示,对于类型和命名空间,生成的名称通常不是完全限定的名称。

NameOf 运算符在编译时进行求值,在运行时无效。

可以使用 NameOf 运算符使参数检查代码更易于维护:

Private _name As String

Public Property Name As String
    Get
        Return _name
    End Get
    Set
        If value Is Nothing Then
            Throw New ArgumentNullException(NameOf(value), $"{NameOf(name)} cannot be null.")
        End If
    End Set
End Property

NameOf 运算符在 Visual Basic 14 及更高版本中可用。

请参阅