Как я могу использовать callermembername в tostring ()?
(Относительно) новый Callermembername не используется атрибут полезен, но я хотел бы использовать его в некоторых переопределениях, таких как ToString(). Проблема в том, что когда я добавляю его в свой метод, сигнатура изменяется достаточно, чтобы переопределение больше не рассматривалось как таковое.
В Visual Studio 2015 он показывает красную закорючку под ним, указывающую:
Item.ToString(string): no suitable method found to override
Это имеет смысл, поскольку мы добавили строковый аргумент, но, с другой стороны, это не так, потому что это необязательный параметр. Есть ли способ сделать эту работу Короче создания MyToString() и изменения всех ссылок в моем коде на это?
Что я уже пробовал:
class Item { public override string ToString([CallerMemberName] string caller = null) { return base.ToString(); } }