コード例 #1
0
        private void button1_Click(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                ITableImporter importer;
                if (openFileDialog1.FileName.EndsWith("csv", StringComparison.OrdinalIgnoreCase))
                {
                    importer = new CsvTableImporter();
                }
                else
                {
                    importer = new XmlTableImporter();
                }

                string data = File.ReadAllText(openFileDialog1.FileName);
                if (!string.IsNullOrWhiteSpace(data))
                {
                    var success = importer.Import(_runner.GetConn(dbComboBox.Text), tableComboBox.Text, data);
                    MessageBox.Show(data);
                }
                else
                {
                    MessageBox.Show("No content ");
                }
            }
        }
コード例 #2
0
        public void Load_DummyData_Txt()
        {
            ResourceLink tableSource = new AssemblyResourceLink(
                typeof(TableDataTests), "Resources.TableData.DummyData.txt");

            CsvTableImporter tableImporter = new CsvTableImporter();

            Load_DummyData_GenericPart(tableSource, tableImporter, tableImporter.CreateDefaultConfig(tableSource), "CSV");
        }
コード例 #3
0
        public void ImportCsvFromPath()
        {
            var saver = new TestInsertSaver();

            using (var importer = new CsvTableImporter <TestClass>(new MappingOptions(), saver))
            {
                importer.Import(TestXlsxPath);
            }
        }
コード例 #4
0
        public async Task ImportXlsxFromPathAsync()
        {
            var tokenSource = new CancellationTokenSource(60_000);
            var saver       = new TestInsertSaver();

            using (var importer = new CsvTableImporter <TestClass>(new MappingOptions(), saver))
            {
                await importer.ImportAsync(TestXlsxPath, tokenSource.Token);
            }
        }
コード例 #5
0
        public void ImportCsvFromPathAndEvents()
        {
            var saver = new TestInsertSaver();

            using (var importer = new CsvTableImporter <TestClass>(new MappingOptions(), saver))
            {
                saver.Progress += Importer_Progress;
                importer.Import(TestCsvPath);
                saver.Progress -= Importer_Progress;
            }
        }
コード例 #6
0
        public async Task ImportCsvFromPathAsyncAndEvents()
        {
            var tokenSource = new CancellationTokenSource(60_000);
            var saver       = new TestInsertSaver();

            using (var importer = new CsvTableImporter <TestClass>(new MappingOptions(), saver))
            {
                saver.Progress += Importer_Progress;
                await importer.ImportAsync(TestCsvPath, tokenSource.Token);

                saver.Progress -= Importer_Progress;
            }
        }
コード例 #7
0
        private static void Test()
        {
            var runner = new IntegrationTestsRunner();

            var result = runner.CreateDatabase("schoolDb");

            PrintResult(result);

            result = runner.ExecuteQuery("CREATE TABLE students (Id:int,FirstName:string,LastName:string,Grade:int)", "schoolDb");
            PrintResult(result);

            result = runner.ExecuteQuery("CREATE TABLE objects (Name:string,Points:int)", "schoolDb");
            PrintResult(result);

            var firstNames = new List <string>()
            {
                "Vasile", "Ion", "Gheorghe", "Nicolai", "Elena", "Stefan", "Alexandra", "Mihai", "Maria", "Ana"
            };

            var lastNames = new List <string>()
            {
                "Pojoga", "Munteanu", "Herta", "Ailenei", "Creanga", "Stan", "Budescu", "Apostol", "Mironica", "Velea"
            };

            var grades = new List <int>()
            {
                9, 4, 8, 7, 10, 9, 3, 2, 8, 10
            };

            for (var i = 0; i < 10; i++)
            {
                result = runner.ExecuteQuery(string.Format("INSERT INTO students(Id,FirstName,LastName,Grade) VALUES({0},'{1}','{2}',{3})", i + 1, firstNames[i], lastNames[i], grades[i]), "schoolDb");
                PrintResult(result);
            }

            result = runner.ExecuteQuery("SELECT * FROM students", "schoolDb");
            PrintResult(result);

            result = runner.ExecuteQuery("SELECT * FROM students WHERE Id>0 AND Id<2 OR Grade>9 AND Id>=2 AND FirstName!='Vasile'", "schoolDb");
            PrintResult(result);

            result = runner.ExecuteQuery("DELETE FROM students WHERE Id=1 OR Id>=8", "schoolDb");
            PrintResult(result);

            result = runner.ExecuteQuery("SELECT * FROM students", "schoolDb");
            PrintResult(result);

            result = runner.ExecuteQuery("UPDATE students SET Grade=5 WHERE Grade<5", "schoolDb");
            PrintResult(result);

            result = runner.ExecuteQuery("SELECT * FROM students", "schoolDb");
            PrintResult(result);

            result = runner.ExecuteQuery("UPDATE students SET Grade=5,LastName='Failed' WHERE Grade<5 OR FirstName='Vasile'", "schoolDb");
            PrintResult(result);

            result = runner.ExecuteQuery("SELECT * FROM students", "schoolDb");
            PrintResult(result);

            result = runner.ExecuteQuery("SELECT * FROM students", "schoolDb");
            IQueryResultSerializer serializer = new CsvQueryResultSerializer();
            var csv = serializer.Serialize(result);

            System.Console.WriteLine(csv);

            result     = runner.ExecuteQuery("SELECT * FROM students", "schoolDb");
            serializer = new XmlQueryResultSerializer();
            var xml = serializer.Serialize(result);

            System.Console.WriteLine(xml);

            result = runner.ExecuteQuery("DELETE FROM students", "schoolDb");
            PrintResult(result);

            var databaseConnection = new DatabaseConnection(new DatabaseCofiguration(new DatabaseStorageService()), Constants.ServerLocation, "schoolDb");

            ITableImporter importer = new CsvTableImporter();
            var            success  = importer.Import(databaseConnection, "students", csv);

            System.Console.WriteLine(string.Format("Import from csv: {0}", success));

            importer = new XmlTableImporter();
            success  = importer.Import(databaseConnection, "students", xml);
            System.Console.WriteLine(string.Format("Import from xml: {0}", success));

            System.Console.ReadKey();
        }