From ad0aedb0a8b32907c76e879419f3f0e68dd16ce0 Mon Sep 17 00:00:00 2001 From: Chris Kaczor Date: Wed, 11 Oct 2023 19:32:04 -0400 Subject: [PATCH] Improves "save as Excel" functionality (#2266) --- Packages.props | 2 + .../Microsoft.SqlTools.ServiceLayer.csproj | 2 + .../Contracts/SaveResultsRequest.cs | 20 + .../QueryExecution/Contracts/Serialization.cs | 28 ++ .../SaveAsExcelFileStreamWriter.cs | 137 +++++- .../SaveAsExcelFileStreamWriterHelper.cs | 288 ++++++++--- .../DataStorage/SaveAsWriterBase.cs | 11 + .../QueryExecution/ResultSet.cs | 24 +- .../QueryExecution/SerializationService.cs | 6 +- .../xl/styles.xml | 13 +- .../worksheets/sheet1-autoFilterEnabled.xml | 22 + .../xl/worksheets/sheet1-headerRowBold.xml | 21 + .../xl/worksheets/sheet1-headerRowFrozen.xml | 27 ++ .../xl/worksheets/sheet1-withColumns.xml | 30 ++ .../SaveAsExcelFileStreamWriterHelperTests.cs | 459 ++++++++++++++++-- 15 files changed, 969 insertions(+), 121 deletions(-) create mode 100644 test/Microsoft.SqlTools.ServiceLayer.Test.Common/TestData/DataStorage/SaveAsExcelFileStreamWriterHelperTests/xl/worksheets/sheet1-autoFilterEnabled.xml create mode 100644 test/Microsoft.SqlTools.ServiceLayer.Test.Common/TestData/DataStorage/SaveAsExcelFileStreamWriterHelperTests/xl/worksheets/sheet1-headerRowBold.xml create mode 100644 test/Microsoft.SqlTools.ServiceLayer.Test.Common/TestData/DataStorage/SaveAsExcelFileStreamWriterHelperTests/xl/worksheets/sheet1-headerRowFrozen.xml create mode 100644 test/Microsoft.SqlTools.ServiceLayer.Test.Common/TestData/DataStorage/SaveAsExcelFileStreamWriterHelperTests/xl/worksheets/sheet1-withColumns.xml diff --git a/Packages.props b/Packages.props index 1eef4418..4c4686c3 100644 --- a/Packages.props +++ b/Packages.props @@ -57,6 +57,8 @@ + +