Gibt es eine Kommandozeilen-Schnittstelle oder ein Interpreter für .net Code ausgeführt wird? [geschlossen]
-
16-09-2019 - |
Frage
Ich brauche es, will aber nicht heißes Wasser neu zu erfinden.
Frage von Beispiel Syntax wie möglich Beispiel:
.net> load myLibrary.dll
myLibrary.dll loaded
.net> Person p "John" "Doo" 32
Instance of myLibrary.Person created (p)
.net> print p.Age
32
Also ich bin auf der Suche nach einem Kommandozeilen-Interface der öffentlichen Methoden und Eigenschaften einer Baugruppe zuzugreifen. (In diesem Beispiel wird der Ctor der Person (string, string, int) aufgerufen wurde und danach das Eigentum Alter auf die Konsole ausgegeben wurde.)
Obwohl ich mit jeder Lösung dieses Problem gerne würde,
- Ich brauche den Quell zu, so kann ich sie anpassen ... (I c # prefere sehr viel)
- Ich brauche es frei und verteilbar sein
Irgendwelche Ideen?
UPDATE: Wenn ich nicht eine gute Lösung finden kann, werde ich es selbst programmieren, alle Interessierten können mit mir Kontakt auf gmail, ist, dass phelsen bei
.Lösung
F # hat eine Befehlszeile REPL (fsi.exe). Und der Code für F # verfügbar ist.
(Siehe http://strangelights.com/fsharp/wiki für einen alten Screenshot /default.aspx/FSharpWiki/FSI.html, um eine Vorstellung zu bekommen.)
Andere Tipps
Für C # (Original-Tags), das ist die Art der Sache, dass der "Compiler als Service" wird in einer zukünftigen Version ermöglichen. Sie können jedoch einen Teil davon bereits in Mono (mit Quellcode verfügbar) tun - CsharpRepl . Es sollte den Wert des letzten Befehls drucken -. Nicht ganz die gleiche wie die Person
Beschreibung Sie wollten (Ich gehe davon aus, es wird ToString()
verwenden)
(Quelle: mono-project.com )
Vielleicht möchten Sie schauen in Powershell , obwohl gibt es keine Quelle meines Wissens zur Verfügung. Die Syntax ist nicht genau die C #, aber es ist ziemlich leicht zu holen.
Haben Sie versucht, Powershell (ehemals Codenamen Monad )? Es ist ein CLI, auf Basis von .NET und mit vollem Zugriff auf Baugruppen, wenn auch mit einem anderen Modell als die Prozedur ‚Last Assembly‘ Sie angegeben.