Ich habe eine Klasse:
%Vor%In diese Dokumentation (im letzten Teil) steht:
... Der Parser übergibt NULL auch an die Master-Klasse GetUsage (string) Der Benutzer hat den Hilfeindex mit folgendem Befehl angefordert:
$ git Hilfe
oder der Befehl verb, wenn der Benutzer explizit angefordert hat Anweisungen zur Verwendung eines bestimmten Verbs:
$ git help commit
...
Ich versuche Typ: MyApp.exe help verb1
, aber sehe nur Basishilfe (als ob ich falsches Verb oder help
Verb oder etwas anderes eingeben würde). Aber ich möchte eine Hilfebotschaft für das angegebene Verb sehen. Warum es nicht funktioniert?
In Ihren Anwendungen funktioniert die Funktion richtig?
Bei mir funktioniert das mit dem erwähnten Ansatz, aber nur, wenn ich meine App ohne die --help
-Option (zB MyApp batch
) anrufe. Wenn ich MyApp --help batch
verwende, ist das Verhalten wie von dir beschrieben.
Wir können jedoch nicht das gleiche für die help
-Option verwenden.
BEARBEITEN: Ich habe das geschafft, indem ich den Code von Commandline.Parser.cs
mit folgendem geändert habe:
Das Problem erscheint in der Zeile
%Vor% Da das allererste Argument ( args[0]
) als Verb oder besser als Aktion interpretiert wird (wie in den Dokumenten beschrieben), wird verb
immer help
sein. Also ersetzen wir dies durch args[1]
, welches das tatsächliche Verb enthält, zum Beispiel commit
.
EDIT2: Damit dies auch für --help
funktioniert, sollten wir auch das erste Argument ( args[0]
) vom -
-Zeichen
Tags und Links c# command-line command-line-arguments command-line-parser