1

C# でプロジェクトにコマンド ライン パーサーを実装しています。

https://github.com/commandlineparser/commandline

DB 接続の引数を取るコマンド ライン ツールを作成しようとしています。

  1. サーバーアドレス
  2. DB カタログ
  3. ユーザー名 (統合されていない場合)
  4. パスワード

オプションを持つ Options.cs クラスを作成しました

public class Options
{
    [Option('s', "dbServer", Required = true, HelpText = "The database server for connections.", DefaultValue = "localhost")]
    public string DbServer { get; set; }

    [Option('c', "dbCatalog", Required = true, HelpText = "The database catalog for connections.", DefaultValue = "Portal")]
    public string DbCatalog { get; set; }

    [Option('u', "dbUser", Required = true, HelpText = "The database user for connections.", DefaultValue = null)]
    public string DbUser { get; set; }

    [Option('p', "dbPassword", Required = true, HelpText = "The database password for connections.", DefaultValue = null)]
    public string DbPassword { get; set; }
}

しかし、 Main メソッドでオプションを解析しようとすると...

public static void Main(string[] args)
{
    Parser.Default.ParseArguments<Options>(args)
        .WithParsed(RunOptions);
}

(「.ParseArgument」の下の赤いジグザグ線と、その上にカーソルを合わせると、これらが表示されます) ->

Exception : ArgumentNullException 

The non generic method Parser.ParseArguments(string[], object) cannot be used with type arguments

ここで何が問題なのか誰にもわかりますか...上記のリンクをたどりましたが、それほど難しいことではありません。

4

0 に答える 0