HelpVerbOption funktioniert nicht - Befehlszeilenparser C #

8

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?

    
gek0n 22.08.2016, 12:14
quelle

1 Antwort

2

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:

%Vor%

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

abschneiden %Vor%     
HimBromBeere 06.09.2016, 11:06
quelle