Operátor C# NameOf se používá k získání názvu proměnné, třídy nebo metody. Jako výsledek vrátí jednoduchý řetězec.
V kódu náchylném k chybám je užitečné zachytit název metody, ve které došlo k chybě.
Můžeme jej použít pro protokolování, ověřování parametrů, kontrolu událostí atd.
Poznámka: pokud chceme získat plně kvalifikované jméno, můžeme použít výraz typeof spolu s operátorem nameof.
Podívejme se na příklad, který implementuje jméno operátor.
Příklad jména operátora C# 1
using System; namespace CSharpFeatures { class NameOfExample { public static void Main(string[] args) { string name = 'javatpoint'; // Accessing name of variable and method Console.WriteLine('Variable name is: '+nameof(name)); Console.WriteLine('Method name is: '+nameof(show)); } static void show() { // code statements } } }
Výstup:
Variable name is: name Method name is: show
Můžeme jej také použít k získání názvu metody, ve které došlo k výjimce. Viz následující příklad.
Příklad jména operátora C# 2
using System; namespace CSharpFeatures { class NameOfExample { int[] arr = new int[5]; public static void Main(string[] args) { NameOfExample ex = new NameOfExample(); try { ex.show(ex.arr); } catch(Exception e) { Console.WriteLine(e.Message); // Displaying method name that throws the exception Console.WriteLine('Method name is: '+nameof(ex.show)); } } int show(int[] a) { a[6] = 12; return a[6]; } } }
Výstup:
Index was outside the bounds of the array. Method name is: show