Пример #1
0
        static void ImportDataFromExcelEquity()
        {
            using (EdisRepository edisRepo = new EdisRepository()) {
                Console.WriteLine("Program start......");
                //string excelFilePath = "C:/Users/ahksysuser06/Desktop/EDISData/Australian Equity Daily Closing Price 20131211.xlsx";
                string excelFilePath = "C:/Users/ahksysuser06/Desktop/EDISData/International_Equity_Daily_Closing_Price_20131211.xlsx";
                // make sure your sheet name is correct, here sheet name is sheet1, so you can change the sheet name if have    different
                string excelQuery = "select SecId,Name,Symbol from [Sheet1$]";
                try
                {
                    string excelConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + excelFilePath +
                                                   ";Extended Properties='Excel 12.0;HDR=YES;IMEX=1;'";
                    OleDbConnection oleConn = new OleDbConnection(excelConnectionString);
                    oleConn.Open();
                    OleDbDataReader oleReader = new OleDbCommand(excelQuery, oleConn).ExecuteReader();
                    //while (oleReader.Read())
                    //{
                    //    Domain.Portfolio.AggregateRoots.Asset.Equity equity = new AustralianEquity(edisRepo)
                    //    {
                    //        Name = oleReader.GetString(1),
                    //        Sector = oleReader.GetString(0),
                    //        Ticker = oleReader.GetString(2),
                    //        EquityType = EquityTypes.AustralianEquity,
                    //    };
                    //    Console.WriteLine("inserting");
                    //    edisRepo.InsertEquityData(equity);
                    //}
                    while (oleReader.Read())
                    {
                        Domain.Portfolio.AggregateRoots.Asset.Equity equity = new InternationalEquity(edisRepo)
                        {
                            Name       = oleReader.GetString(1),
                            Sector     = oleReader.GetString(0),
                            Ticker     = oleReader.GetString(2),
                            EquityType = EquityTypes.InternationalEquity,
                        };
                        Console.WriteLine("inserting");
                        edisRepo.InsertEquityData(equity);
                    }
                    oleReader.Close();
                    oleConn.Close();
                    Console.WriteLine("Finished");
                }

                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                    throw;
                }
            }
        }