0

Web サービスと対話する単純な C# コンソール アプリケーションがあります。期待を処理してエラーコードを返す方法が適切かどうかはわかりません。これを行うための良い実践についてコメントしたいと思います。(オプションの解析に CommandLine.dll を使用しています)

class Program
    {
        static int Main(string[] args) {
            var options = new Options();
            if (CommandLine.Parser.Default.ParseArguments(args, options)) {
                try {
                    var client = new MyWebService();
                    var response = client.MyFunction(new MyRequest() { Param1 = options.param1, Param2 = options.Param2 });
                    if (response.ErrorCode != 0) {
                        Console.WriteLine("Error code= " + response.ErrorCode);
                    }
                    else {
                        File.WriteAllText(options.OutputFile, response.File);
                        return 0;
                    }
                }
                catch (Exception exp) {
                    Console.WriteLine(exp.Message);
                    return 1;
                }
            }
            return 1;
        }
    }
4

2 に答える 2

-1

エラーが発生した場合に例外をスローするように、MyWebServiceクラスとをリファクタリングする必要があります。MyFunctionエラーコードを返す代わりに。これにより、誰がどのレベルでエラーを処理できるかという点で完全な柔軟性が得られ、コードがはるかに読みやすくなります。

于 2013-08-14T06:29:29.123 に答える