У меня странный вопрос.Вот и все -
Давайте рассмотрим следующий фрагмент кода:
string test ="this is a test string";
Console.WriteLine(test);
Я хочу напечатать другую вещь - например, yup, this is a test string
.На самом деле, я хочу посмотреть, соответствует ли строка некоторому шаблону, и если да, то я хочу, чтобы она печаталась по-другому.Я хочу, чтобы это имело место, только когда я печатаю его на консоли, но всякий раз, когда я использую его в другом месте, он должен быть оригинальным.
Я надеялся, что смогу написать метод расширения для класса String (или Object class?) и заставить ToString () возвращаться в соответствии с моими потребностями, но документы говорят:
Метод расширения никогда не будет вызываться, если он имеет ту же сигнатуру, что и метод, определенный в типе.
Есть ли такая возможность?Я не могу использовать новый тип.Или, может быть, попытка заставить ToString () вести себя иначе - это не тот путь.Но есть ли способ заставить определенную строку печатать на консоли по-другому, но использовать ее в оригинальном виде в другом месте?