Überladen von Operatoren mit C # -Erweiterungsmethoden

Ich versuche, Erweiterungsmethoden zu verwenden, um dem C # eine Operatorenüberladung hinzuzufügen.StringBuilder Klasse. Insbesondere gegebenStringBuilder sb, Ich würde gernesb += "text" äquivalent werden zusb.Append("text").

Hier ist die Syntax zum Erstellen einer Erweiterungsmethode fürStringBuilder:

public static class sbExtensions
{
    public static StringBuilder blah(this StringBuilder sb)
    {
        return sb;
    }
} 

Es fügt erfolgreich dieblah Erweiterungsmethode zumStringBuilder.

Leider scheint das Überladen von Operatoren nicht zu funktionieren:

public static class sbExtensions
{
    public static StringBuilder operator +(this StringBuilder sb, string s)
    {
        return sb.Append(s);
    }
} 

Unter anderem das Stichwortthis ist in diesem Zusammenhang nicht erlaubt.

Sind das Hinzufügen von Operatorüberladungen über Erweiterungsmethoden möglich? Wenn ja, wie gehen Sie vor?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage