public override void Execute()
        {
            var columnsCount = 10;
            var workBook     = new SpreadsheetWorkbook();

            var worksheet = new SpreadsheetWorksheet("Test22");
            var table     = new SpreadsheetTable("GridTable");

            for (var i = 0; i < 10; i++)
            {
                table.Columns.Add(new SpreadsheetTableColumn()
                {
                    Name = $"Column{i}"
                });
            }

            var rowCounter = 0;
            var enumerator = Enumerable.Range(0, RowsToStream)
                             // normally you would have some other IEnumerable that you would transform into spreadsheetrows
                             // the key to use the least amount of memory as possible it to just pass it along without calling .ToList on the transformed data
                             .Select(x =>
            {
                return(createTestRow(false, columnsCount, x));
            })
                             .GetEnumerator();

            table.ActivateStreamingMode(enumerator);

            worksheet.AddTable(table);
            workBook.AddWorksheet(worksheet);
            workBook.Save(OutputFile);
        }
Beispiel #2
0
        public void NonStreaming_LargeTable_FileCreated()
        {
            var newExcel     = new SpreadsheetWorkbook();
            var columnsCount = 10;
            var worksheet    = new SpreadsheetWorksheet("Test22");

            for (int i = 0; i < 100000; i++)
            {
                var cells = new List <SpreadsheetCell>();
                for (var j = 0; j < columnsCount; j++)
                {
                    cells.Add(new SpreadsheetCell()
                    {
                        BackgroundColor = Color.Red,
                        ForegroundColor = Color.Blue,
                        Font            = _font,
                        Alignment       = HorizontalAligment.Center,
                        Value           = $"Ovo je test {i} - {j}"
                    });
                }

                var row = new SpreadsheetRow()
                {
                    RowCells = cells
                };
                worksheet.AddRow(row);
            }

            newExcel.AddWorksheet(worksheet);
            newExcel.Save(STR_TestOutputPath);

            Assert.IsTrue(File.Exists(STR_TestOutputPath));
        }
Beispiel #3
0
        public override void Execute()
        {
            var columnsCount = 10;
            var workBook     = new SpreadsheetWorkbook();

            var worksheet = new SpreadsheetWorksheet("Test22");
            var table     = new SpreadsheetTable("GridTable");

            for (var i = 0; i < 10; i++)
            {
                table.Columns.Add(new SpreadsheetTableColumn()
                {
                    Name = $"Column{i}"
                });
            }

            table.ActivateStreamingMode();
            var rowCounter = 0;

            table.TableRowRequested += (s, args) =>
            {
                var spreadsheetRow = createTestRow(true, columnsCount, rowCounter);
                args.Row = spreadsheetRow;
                rowCounter++;
                args.Finished = rowCounter == RowsToStream;
            };

            worksheet.AddTable(table);
            workBook.AddWorksheet(worksheet);
            workBook.Save(OutputFile);
        }
Beispiel #4
0
        public override void Execute()
        {
            var workBook = new SpreadsheetWorkbook();
            var sheet    = new SpreadsheetWorksheet("Sheet1");

            workBook.AddWorksheet(sheet);

            var table = new SpreadsheetTable("Table1");

            table.Columns = new List <SpreadsheetTableColumn>()
            {
                new SpreadsheetTableColumn()
                {
                    Name = "Column A"
                },
                new SpreadsheetTableColumn()
                {
                    Name = "Column B"
                }
            };

            table.Rows = new List <SpreadsheetRow>()
            {
                new SpreadsheetRow()
                {
                    RowCells = new List <SpreadsheetCell>()
                    {
                        new SpreadsheetCell()
                        {
                            Value = "Test"
                        },
                        new SpreadsheetHyperlinkCell(new SpreadsheetHyperLink("https://www.google.com", "Google me!"))
                    }
                },
                new SpreadsheetRow()
                {
                    RowCells = new List <SpreadsheetCell>()
                    {
                        new SpreadsheetCell()
                        {
                            Value = "Test2 "
                        },
                        new SpreadsheetHyperlinkCell(new SpreadsheetHyperLink("https://www.google.com", "Google me!"))
                    }
                }
            };

            sheet.AddTable(table);


            workBook.Save(OutputFile);
        }
Beispiel #5
0
        private static SpreadsheetWorkbook setupLargeWorkbook(Action <SpreadsheetRow> afterRowCreated, int rowsToStream = 800000, bool useHyperLinks = false, bool useEnumerator = false)
        {
            var columnsCount = 10;
            var newExcel     = new SpreadsheetWorkbook();

            var worksheet = new SpreadsheetWorksheet("Test22");
            var table     = new SpreadsheetTable("GridTable");

            for (var i = 0; i < 10; i++)
            {
                table.Columns.Add(new SpreadsheetTableColumn()
                {
                    Name = $"Column{i}"
                });
            }

            if (!useEnumerator)
            {
                table.ActivateStreamingMode();
                var rowCounter = 0;
                table.TableRowRequested += (s, args) =>
                {
                    var spreadsheetRow = createTestRow(useHyperLinks, columnsCount, rowCounter);
                    args.Row = spreadsheetRow;
                    rowCounter++;
                    afterRowCreated?.Invoke(args.Row);
                    args.Finished = rowCounter == rowsToStream;
                };
            }
            else
            {
                var enumerator = Enumerable.Range(0, rowsToStream).Select(x =>
                {
                    var row = createTestRow(useHyperLinks, columnsCount, x);
                    afterRowCreated?.Invoke(row);
                    return(row);
                })
                                 .GetEnumerator();

                table.ActivateStreamingMode(enumerator);
            }

            worksheet.AddTable(table);

            newExcel.AddWorksheet(worksheet);
            return(newExcel);
        }
Beispiel #6
0
        public override void Execute()
        {
            var workBook = new SpreadsheetWorkbook();
            var sheet    = new SpreadsheetWorksheet("Sheet1");

            workBook.AddWorksheet(sheet);

            sheet.AddRow(new SpreadsheetRow()
            {
                RowCells = new List <SpreadsheetCell>()
                {
                    new SpreadsheetCell()
                    {
                        Value = "Hello World!"
                    }
                }
            });

            workBook.Save(OutputFile);
        }
Beispiel #7
0
        public void Test1()
        {
            var newExcel = new SpreadsheetWorkbook();

            var worksheet = new SpreadsheetWorksheet("Test22");

            worksheet.AddRow(new SpreadsheetRow()
            {
                RowCells = new System.Collections.Generic.List <SpreadsheetCell>()
                {
                    new SpreadsheetCell()
                    {
                        Value = "test"
                    }
                }
            });

            newExcel.AddWorksheet(worksheet);
            newExcel.Save("c:\\temp\\test.xlsx");
        }
Beispiel #8
0
        public void Save_SingleCell_FileCreated()
        {
            var newExcel = new SpreadsheetWorkbook();

            var worksheet = new SpreadsheetWorksheet("Test22");

            worksheet.AddRow(new SpreadsheetRow()
            {
                RowCells = new System.Collections.Generic.List <SpreadsheetCell>()
                {
                    new SpreadsheetCell()
                    {
                        Value = "test"
                    }
                }
            });

            newExcel.AddWorksheet(worksheet);
            newExcel.Save(STR_TestOutputPath);

            Assert.IsTrue(File.Exists(STR_TestOutputPath));
        }