For convenience of further use, we develop the code as an extension method.
The instance method has precedence even if the extension method is a better match.
Die Instanzmethode hat auch dann Vorrang, wenn die Erweiterungsmethode eine bessere Übereinstimmung aufweist.
An extension method will never be called if it has the same signature as a method defined in the type.
Eine Erweiterungsmethode wird nie aufgerufen, wenn sie die gleiche Signatur wie eine im Typ definierte Methode hat.
An extension method with the same name and signature as an interface or class method will never be called.
Eine Erweiterungsmethode mit dem gleichen Namen und der gleichen Signatur wie eine Schnittstellen- oder Klassenmethode wird nie aufgerufen.
The first parameter in an extension method definition specifies which data type the method extends.
Der erste Parameter in der Definition einer Erweiterungsmethode gibt den Datentyp an, der von der Methode erweitert wird.
The following example demonstrates how the compiler determines which extension method or instance method to bind to.
Im folgenden Beispiel wird veranschaulicht, wie der Compiler bestimmt, mit welcher Erweiterungsmethode oder Instanzmethode die Bindung erfolgen soll.
Marking the module in which the method is defined is optional, but each extension method must be marked.
Die Markierung des Moduls, in dem die Methode definiert ist, ist optional, aber jede Erweiterungsmethode muss markiert werden.
An extension method's precedence is based on the mechanism used to bring the method into scope.
Die Rangfolge einer Erweiterungsmethode basiert auf dem Mechanismus, der verwendet wird, um die Methode in den Gültigkeitsbereich einzubinden.
The extension method has been made for the class provided by the library, so that's why it's incompatible with your class.
Die Erweiterungsmethode wurde für die von der Bibliothek bereitgestellte Klasse erstellt, weshalb sie nicht mit Ihrer Klasse kompatibel ist.
The author of an extension method cannot prevent other programmers from writing conflicting extension methods that may have precedence over the original extension.
Der Autor einer Erweiterungsmethode kann nicht verhindern, dass andere Programmierer Erweiterungsmethoden schreiben, die Vorrang vor der ursprünglichen Erweiterung haben und damit Konflikte verursachen.
In C#, what happens when you call an extension method on a null object?
In C , was passiert, wenn Sie eine Erweiterungsmethode für ein Nullobjekt aufrufen?
You can also create a new method for an enum by using an extension method.
Sie können für eine Enumeration auch eine neue Methode erstellen, indem Sie die Erweiterungsmethode verwenden.
However, if a class implements two interfaces that have extension methods with the same signature, neither extension method is visible.
Wenn eine Klasse jedoch zwei Schnittstellen implementiert, die über Erweiterungsmethoden mit gleicher Signatur verfügen, wird keine der Erweiterungsmethoden angezeigt.