Перегрузка операторов методами расширения 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 не допускается в этом контексте.

Возможно ли добавить перегрузки операторов с помощью методов расширения? Если так, то как правильно это сделать?

Ответы на вопрос(6)

Ваш ответ на вопрос