Entwickler-Ecke
Basistechnologien - Klassen on the fly einbinden
lapadula - Mi 26.07.17 21:20
Titel: Klassen on the fly einbinden
Hallo hab mal wieder eine Frage :D
Mal angenommen ich habe ein Programm A, welches modular aufgebaut ist.
Mit einem anderen Programm B soll man nun Klassen erstellen können, die in das Programm A on the fly einbunden werden. Aus diesen Klassen sollen dann Objekte gebildet werden usw, quasi so, als wären die schon seit Anfang an da.
Ist sowas möglich?
Ralf Jansen - Mi 26.07.17 21:49
Nicht ganz klar was du willst.
Erstmal klingt es nach einem normalen Plugin/Addin System.
Aber was soll das andere Programm? Möchtest du ein Codegenerator für diese Klassen haben um im im anderen Programm zu nutzen?
jfheins - Mi 26.07.17 22:06
Du kannst in Programm A ein Interface oder eine abstrakte Basisklasse definieren.
Dann kannst du beliebig viele Assemblies erstellen, in denen dann Ableitungen dieser Klasse drin sind. Nun kann Programm A diese Assemblies laden und die Objekte benutzen. (Entweder beim start "Alle Assemblies in diesem Ordner laden" oder auch ganz on the fly)
Das Programm B wäre in diesem Fall Visual Studio Commuinity (man scheibt Klassen und kompiliert diese zu einer Assembly).
Du kannst aber natürlich auch eine beliebig vereinfachte Variante von Visual Studio nach-programmieren. Je nach Zielgruppe.
lapadula - Do 27.07.17 09:57
@Ralf: Ja genau, dachte da einfach an einen einfach Textgenerator, nur Benutzerfreundlich. Z.B. der Benutzer gibt in eine TextBoxKlasse den Namen der Klasse ein und das Programm erstellt dann
C#-Quelltext
1:
| public class TextBoxKlasse.Text {} |
Dann TextBoxEigenschaft usw.
Am Ende ergibt das
public class Test {public Property {get;set;}}
@jfheins: Ich glaube das ist genau das wonach ich suche, muss ich mal demnächst mal ausprobieren.
Moderiert von Th69: C#-Tags hinzugefügt
Delete - Do 27.07.17 13:22
- Nachträglich durch die Entwickler-Ecke gelöscht -
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!