Пример #1
0
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");

            // Initialize dictionary to store connection details from config.txt
            IDictionary <string, string> dictionary = new Dictionary <string, string>();

            dictionary = generateConfig("..\\..\\..\\config.txt");

            // Retrieve connection information from configuration file
            string ip        = dictionary["ip"];
            int    port      = Convert.ToInt32(dictionary["port"]);
            string Namespace = dictionary["namespace"];
            string username  = dictionary["username"];
            string password  = dictionary["password"];

            try
            {
                // Making connection using IRISConnecion
                IRISConnection connection = new IRISConnection();

                // Create connection string
                connection.ConnectionString = "Server = " + ip + "; Port = " + port + "; Namespace = " +
                                              Namespace + "; Password = "******"; User ID = " + username;
                connection.Open();
                Console.WriteLine("Connected to InterSystems IRIS.");

                IRIS irisNative = IRIS.CreateIRIS(connection);

                // Starting interactive prompt
                bool always = true;
                while (always)
                {
                    Console.WriteLine("1. Test");
                    Console.WriteLine("2. Store stock data");
                    Console.WriteLine("3. View stock data");
                    Console.WriteLine("4. Generate Trades");
                    Console.WriteLine("5. Call Routines");
                    Console.WriteLine("6. Quit");
                    Console.WriteLine("What would you like to do? ");

                    String option = Console.ReadLine();
                    switch (option)
                    {
                    // Task 1
                    case "1":
                        SetTestGlobal(irisNative);
                        break;

                    // Task 2
                    case "2":
                        StoreStockData(irisNative, connection);
                        break;

                    // Task 3
                    case "3":
                        Console.WriteLine("Printing nyse globals...");
                        long startPrint = DateTime.Now.Ticks;     // To calculate execution time

                        // Iterate over all nodes
                        PrintNodes(irisNative, "nyse");
                        long totalPrint = DateTime.Now.Ticks - startPrint;
                        Console.WriteLine("Execution time: " + totalPrint / TimeSpan.TicksPerMillisecond + " ms");
                        break;

                    // Task 4
                    case "4":
                        GenerateData(irisNative, 10);
                        break;

                    // Task 5
                    case "5":
                        Console.WriteLine("on InterSystems IRIS version: " + irisNative.FunctionString("PrintVersion", "^StocksUtil"));
                        break;

                    case "6":
                        Console.WriteLine("Exited.");
                        always = false;
                        break;

                    default:
                        Console.WriteLine("Invalid option. Try again!");
                        break;
                    }
                }
                irisNative.Close();
            }
            catch (Exception e)
            {
                Console.WriteLine("Error - Exception thrown: " + e);
            }
        }