Esempio n. 1
0
        private static DataGridResultViewer InitializeResultViewer()
        {
            var columnHeaders =
                new[]
            {
                new ColumnHeader {
                    ColumnIndex = 0, DatabaseDataType = "Varchar2", DataType = typeof(string), Name = "DUMMY1"
                },
                new ColumnHeader {
                    ColumnIndex = 1, DatabaseDataType = "Date", DataType = typeof(DateTime), Name = "DUMMY_WITH_UNDERSCORES"
                },
                //new ColumnHeader { ColumnIndex = 2, DatabaseDataType = "Varchar2", DataType = typeof (string), Name = "\"'\\\"><?,.;:{}[]%$#@!~^&*()_+-§'''||(1/2*3+4-CASEWHEN1<=2OR2>=1THEN5ELSE6END)" }
            };

            var documentPage = new DocumentPage {
                CurrentConnection = ConfigurationProvider.ConnectionStrings[0]
            };

            documentPage.DatabaseModel.Dispose();

            var outputViewer = new OutputViewer(documentPage);

            var dataRows =
                new[]
            {
                new object[] { "Value \"1\" '2' <3>", new DateTime(2014, 8, 16, 22, 25, 34) },
                new object[] { "\"2.\"Value", new DateTime(2014, 8, 16) },
                //new object[] {"\"><?,.;:{}[]%$#@!~^&*()_+-§' ,5", new DateTime(2015, 5, 30) }
            };

            var resultInfo = new ResultInfo(null, "Test result", ResultIdentifierType.UserDefined);

            var executionResult =
                new StatementExecutionResult
            {
                StatementModel =
                    new StatementExecutionModel
                {
                    StatementText = "SELECT * FROM DUAL"
                },
                ResultInfoColumnHeaders =
                    new Dictionary <ResultInfo, IReadOnlyList <ColumnHeader> >
                {
                    { resultInfo, columnHeaders }
                }
            };

            var resultViewer =
                new DataGridResultViewer(outputViewer, executionResult, resultInfo)
            {
                ResultGrid = { ItemsSource = dataRows }
            };

            DataGridHelper.InitializeDataGridColumns(resultViewer.ResultGrid, columnHeaders, outputViewer.StatementValidator, outputViewer.ConnectionAdapter);

            return(resultViewer);
        }
Esempio n. 2
0
        private static async Task <string> GetExportContent(DataGridResultViewer resultViewer, IDataExporter dataExporter)
        {
            var tempFileName = await GenerateExportFile(resultViewer, dataExporter);

            var result = File.ReadAllText(tempFileName);

            File.Delete(tempFileName);
            return(result);
        }
Esempio n. 3
0
        private static async Task <string> GenerateExportFile(DataGridResultViewer resultViewer, IDataExporter dataExporter)
        {
            var tempFileName            = Path.GetTempFileName();
            var connectionConfiguration = ConfigurationProvider.GetConnectionConfiguration(ConfigurationProvider.ConnectionStrings[0].Name);

            Thread.CurrentThread.CurrentCulture = CultureInfo.DefaultThreadCurrentCulture = CultureInfo.InvariantCulture;

            using (var exportContext = await dataExporter.StartExportAsync(ExportOptions.ToFile(tempFileName, resultViewer.Title), DataExportHelper.GetOrderedExportableColumns(resultViewer.ResultGrid), connectionConfiguration.InfrastructureFactory.DataExportConverter, CancellationToken.None))
            {
                await exportContext.AppendRowsAsync(resultViewer.ResultGrid.Items.Cast <object[]>());

                await exportContext.FinalizeAsync();
            }

            return(tempFileName);
        }
Esempio n. 4
0
		private static DataGridResultViewer InitializeResultViewer()
		{
			var columnHeaders =
				new[]
				{
					new ColumnHeader { ColumnIndex = 0, DatabaseDataType = "Varchar2", DataType = typeof (string), Name = "DUMMY1" },
					new ColumnHeader { ColumnIndex = 1, DatabaseDataType = "Date", DataType = typeof (DateTime), Name = "DUMMY_WITH_UNDERSCORES" },
					//new ColumnHeader { ColumnIndex = 2, DatabaseDataType = "Varchar2", DataType = typeof (string), Name = "\"'\\\"><?,.;:{}[]%$#@!~^&*()_+-§'''||(1/2*3+4-CASEWHEN1<=2OR2>=1THEN5ELSE6END)" }
				};

			var documentPage = new DocumentPage { CurrentConnection = ConfigurationProvider.ConnectionStrings[0] };
			documentPage.DatabaseModel.Dispose();
			
			var outputViewer = new OutputViewer(documentPage);

			var dataRows =
				new[]
				{
					new object[] {"Value \"1\" '2' <3>", new DateTime(2014, 8, 16, 22, 25, 34)},
					new object[] {"\"2.\"Value", new DateTime(2014, 8, 16)},
					//new object[] {"\"><?,.;:{}[]%$#@!~^&*()_+-§' ,5", new DateTime(2015, 5, 30) }
				};

			var resultInfo = new ResultInfo(null, "Test result", ResultIdentifierType.UserDefined);

			var executionResult =
				new StatementExecutionResult
				{
					StatementModel =
						new StatementExecutionModel
						{
							StatementText = "SELECT * FROM DUAL"
						},
					ResultInfoColumnHeaders =
						new Dictionary<ResultInfo, IReadOnlyList<ColumnHeader>>
						{
							{ resultInfo, columnHeaders }
						}
				};

			var resultViewer =
				new DataGridResultViewer(outputViewer, executionResult, resultInfo)
				{
					ResultGrid = { ItemsSource = dataRows }
				};

			DataGridHelper.InitializeDataGridColumns(resultViewer.ResultGrid, columnHeaders, outputViewer.StatementValidator, outputViewer.ConnectionAdapter);

			return resultViewer;
		}
Esempio n. 5
0
		private static async Task<string> GenerateExportFile(DataGridResultViewer resultViewer, IDataExporter dataExporter)
		{
			var tempFileName = Path.GetTempFileName();
			var connectionConfiguration = ConfigurationProvider.GetConnectionConfiguration(ConfigurationProvider.ConnectionStrings[0].Name);
			Thread.CurrentThread.CurrentCulture = CultureInfo.DefaultThreadCurrentCulture = CultureInfo.InvariantCulture;

			using (var exportContext = await dataExporter.StartExportAsync(ExportOptions.ToFile(tempFileName, resultViewer.Title), DataExportHelper.GetOrderedExportableColumns(resultViewer.ResultGrid), connectionConfiguration.InfrastructureFactory.DataExportConverter, CancellationToken.None))
			{
				await exportContext.AppendRowsAsync(resultViewer.ResultGrid.Items.Cast<object[]>());
				await exportContext.FinalizeAsync();
			}

			return tempFileName;
		}
Esempio n. 6
0
		private static async Task<string> GetExportContent(DataGridResultViewer resultViewer, IDataExporter dataExporter)
		{
			var tempFileName = await GenerateExportFile(resultViewer, dataExporter);

			var result = File.ReadAllText(tempFileName);
			File.Delete(tempFileName);
			return result;
		}