コード例 #1
0
        public override int Execute(GenerateModelsOptions options)
        {
            try
            {
                if (!EnvironmentSettings.Uri.EndsWith('/'))
                {
                    EnvironmentSettings.Uri += "/";
                }

                Uri    metaData = new Uri($"{EnvironmentSettings.Uri}0/ServiceModel/EntityDataService.svc/$metadata");
                string response = ApplicationClient.ExecuteGetRequest(metaData.ToString(), -1);

                int count = CountXmlLines(response);

                ConsoleWriter.WriteMessage(ConsoleWriter.MessageType.OK, $"Obtained definition for {count} entities");
                Console.WriteLine();
                Console.WriteLine($"Would you like to create {count} models ? \nPress any key to continue, <Esc> to exit\n...\n");
                ConsoleKeyInfo keyInfo = Console.ReadKey();

                if (keyInfo.Key != ConsoleKey.Escape)
                {
                    Task t = Task.Run(async() => {
                        await BuildModelsAsync(response, options.DestinationPath);
                    });
                    t.Wait();
                }


                return(0);
            }
            catch (Exception)
            {
                return(1);
            }
        }