Example #1
0
        static void Main(string[] args)
        {
            ConfigureLogger();
            // parse the command line args into a strongly typed ConverterConfiguration instance
            Parser.Default.ParseArguments <ConverterConfiguration>(args)
            .WithParsed(config =>
            {
                try
                {
                    if (!config.Validate())
                    {
                        HandleError("Invalid configuration.");
                        return;
                    }

                    Log.Logger.Information($"Converting data from {config.SourceFile} to xml.");
                    var converter   = new RemarketingDataConverter(Log.Logger);
                    var goodConvert = converter.ConvertRemarketingFile(config);
                    if (!goodConvert)
                    {
                        HandleError("Conversion failed.");
                    }
                    else
                    {
                        Log.Logger.Information("Conversion successful.");
                    }
                }
                catch (Exception e)
                {
                    HandleError("Runtime Exception", e);
                }
            })
            .WithNotParsed((errors) =>
            {
                HandleError("Invalid Configuration");
                ConverterConfiguration.ShowUsage();
            });

            Console.WriteLine("Press Enter to exit");
            Console.ReadLine();
        }