Frage von FragenBoy99, 12

hi, kann mir jemand erklären ( bitte ganz einfach dargestellt kein Profizeug) was Extension Methods sind. Brauche dringend hilfe?

Antwort
von Frischmilch, 9

Ich kenn Extension Methods nur in Zusammenhang mit C#, also mit einer Programmiersprache. Könntest du vielleicht noch ein paar Sätze schreiben was dein Problem ist? Ich hab meine Glaskugel leider verlegt.

Kommentar von FragenBoy99 ,

Ja was haben die in C# für ne Arbeit. Was machen die ?

Kommentar von Frischmilch ,

Also, wenn du mit LINQ schon gearbeitet hast, dann hast du Extension Methods ziemlich sicher schon genutzt. Sämtliche LINQ Abfrage-Operatoren sind nämlich nix anderes als Extension Methods

ObjectListe.Where(x=>x.Name.Equals("something"))

Das .Where(...) der Linq Abfrage ist eine Extension Methode.

Extension Methods sind statische Methoden, die jedoch wie Instanzmethoden aufgerufen werden. Damit lassen sich dann sogar Klassen erweitern, die eigentlich sealed sind. Zum Beispiel könntest du für die "string"  Klasse eine Methode "WordCount" schreiben und so aufrufen:

"Beispiel Text".WordCount();

Und dass ohne von der Klasse string ableiten zu müssen (was bei sealed ja ohenhin nicht geht). Der Aufruf sieht zwar aus, als ob eine Instanzmethode aufgerufen werden würde, jedoch wandelt der Compiler den Aufruf um, als ob du eine statische Methode mit Paramter aufrufen würdest. Deshalb kannst du innerhalb einer Extension Methode auch nicht auf private Member der erweiterten Klasse zugreifen. Weiteres, ausführlicheres Wissen findest du über Google auf den MSDN Seiten :-)

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten