/ / Erweiterung des C # -Codes mit separaten Assemblys - c #, .net, Delegaten, c # -2.0, Teilklassen

Erweitern des c # -Codes mit separater Assembly - c #, .net, delegates, c # -2.0, partielle Klassen

Ich habe einige zusätzliche Funktionen, die ich hinzufügen mussDazu gehört das Hinzufügen einer neuen Eigenschaft zu einem Objekt und das Erweitern von Methoden in einer anderen Klasse, die dieses Objekt behandelt. Ich beschäftige mich mit dem Quellcode eines Produkts (in C # 2.0), das wir verwenden. Ich möchte es wirklich nicht ändern, ich möchte es nur erweitern.

Idealerweise hätte ich gerne eine separate Montage dazuTun Sie dies, damit es "klar ist" unser Code. Es scheint, als könnten Teilkurse und Delegierte der Weg sein, aber ich bin nicht sicher, ob dies möglich ist.

Antworten:

3 für die Antwort № 1

Besuche die Dekorateur Muster. Genau das suchen Sie. Sie können die vorhandenen Klassen erben und sie mit zusätzlicher Logik erweitern. Es gibt auch ein Proxy Muster, wenn Sie einige Basisfunktionen ausblenden möchten.


3 für die Antwort № 2

Wie hfcs101 sagte.

Prüfen Sie, ob Sie die Klasse mit vorhandenen OO-Entwurfsmustern erweitern können.

Schau dir an:

Prüfen Sie, ob Sie ein Muster finden, das Ihrem Problem am ehesten entspricht. Dekorateur sieht aus wie der beste Kandidat.


0 für die Antwort № 3

Nun, Sie müssen die ursprünglichen Klassen ändernUm auch "partielle" Klassen zu sein, müssen Sie sicherstellen, dass der Namespace in der zweiten Assembly mit dem in der ersten Assembly übereinstimmt und dass beide Assemblys Referenzen in dem Projekt sind, das die Assemblys verwendet werden.


0 für die Antwort № 4

Können Sie von der Klasse erben oder ist sie versiegelt? Vererbung ist die OO-Methode, um eine vorhandene Klasse zu erweitern ...