Перегрузка операторов методами расширения C #
Я пытаюсь использовать методы расширения для добавления перегрузки оператора в C #StringBuilder
класс. В частности, учитываяStringBuilder
sb
, Мне бы хотелосьsb += "text"
стать эквивалентнымsb.Append("text")
.
Вот синтаксис для создания метода расширения дляStringBuilder
:
public static class sbExtensions
{
public static StringBuilder blah(this StringBuilder sb)
{
return sb;
}
}
Он успешно добавляетblah
метод расширения доStringBuilder
.
К сожалению, перегрузка оператора, похоже, не работает:
public static class sbExtensions
{
public static StringBuilder operator +(this StringBuilder sb, string s)
{
return sb.Append(s);
}
}
Среди других вопросов, ключевое словоthis
не допускается в этом контексте.
Возможно ли добавить перегрузки операторов с помощью методов расширения? Если так, то как правильно это сделать?