2016-02-07 3 views
-4

Можно ли преобразовать метод в строку или какой-либо способ преобразования метода в строку, чтобы напечатать результат метода в виде строки в C#?Преобразование метода в строку в C#?

+3

Непонятно, что вы просите. Если вы хотите напечатать результат метода, почему вы хотите преобразовать метод в строку? Вы имеете в виду преобразовать печать тела метода? Или что? – pwas

+0

Я имею в виду распечатать результат метода yes, но его не нужно преобразовывать в строку, чтобы отправить его на экран? – Leon

ответ

2

Если вы хотите получить имя метода, вы можете использовать reflection. Если вы хотите, чтобы результат метода был строковым, вы можете просто преобразовать его значение в строку удобным для вас способом или бизнес-логикой, которую вы хотите реализовать.

1

Не совсем уверен, что вы просите. Из комментариев кажется, что вы хотите распечатать на экране. Вы должны знать, что все объекты имеют метод ToString(), который вызывается для печати любого типа. Вы можете указать override в своем классе, чтобы обеспечить правильный результат в том случае, если ваш экземпляр напечатан.

public class MyClass 
{ 
    public string SomethingCool => "Hey!"; 
    public override string ToString() 
    { 
     return this.SomethingCool; 
    } 
} 

Вы можете:

  1. Вернуть string из метода, чтобы начать с;
  2. Верните тип, который у вас есть, и явным образом вызываю objectToString() в вашем методе печати (экономит время во время выполнения, так как тип не обязательно должен быть в коробке);
  3. Если просто вызов ToString() на ваш экземпляр не работает, переопределите метод ToString() и поместите любой результат, который вы хотите увидеть.
+0

Кто-нибудь знает, почему отступы от кода ниже списка не форматируются должным образом? Это что-то для Мета? –

+1

Nah, я бы закрыл его как дубликат: http://meta.stackoverflow.com/questions/255372/code-block-bug-when-following-numbered-list – rene

+0

@rene cool спасибо за ссылку. Я не думал, что буду первым встречать его, но также не был уверен, что это вопрос типа мета-формата. –