2016-04-30 4 views
0

Я новичок в кодировании, просто нужно выяснить, можно ли получить имя метода и распечатать с помощью console.write. Здесь у меня есть образец класса, и я хочу захватить «myName», чтобы использовать его для печати.Как напечатать имя моего метода

using System; 

namespace Tests 
{ 
    class Class1 
    { 
     public void myName() 
     { 
      Console.Write(myName); 
     } 
    } 
} 

ответ

-1

Вы можете получить, как это для полной информации:

string method = string.Format("{0}.{1}", System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.FullName, System.Reflection.MethodBase.GetCurrentMethod().Name); 

И вернуть эту строку. Использование вызова в рамках метода.
Или короткая версия только для метода имени, что вы хотите:

string method =System.Reflection.MethodBase.GetCurrentMethod().Name; 
+0

Попробуйте этот метод 'public void neiiic() { var names = Enumerable.Range (0, 15) .Выберите (i => System.Reflection.MethodBase.GetCurrentMethod(). Name +" "+ i) .ToList (); Console.WriteLine (string.Join (Environment.NewLine, имена)); } ' – Eser

+0

Благодарим вас за быстрый повтор, как насчет того, когда мне нужно вызвать вне метода, скажем, у меня есть другой метод2, и я хочу вызвать имя метода method внутри mthod2, возможно ли это? – SQATube

3

Просто используйте ключевое слово nameof

Console.Write(nameof(myName)); 
+0

красиво и краткая. – dfdsfdsfsdf

+1

Только в C# 6.0. –

Смежные вопросы