public void ShouldReturnModuleCodeWhenBuild()
        {
            var sheetBuilder    = new SheetBuilder();
            var workbookBuilder = new WorkbookBuilder(sheetBuilder);
            var moduleBuilder   = new AssemblyCodeBuilder(workbookBuilder);

            var cSharpModule = moduleBuilder.Build("UnitTest", workbook);

            Assert.NotNull(cSharpModule);
        }
Пример #2
0
        public void OutputTestWorkbook()
        {
            string html = File.ReadAllText("htmlTable.html");

            WorkbookBuilder workbookBuilder = new WorkbookBuilder();

            workbookBuilder.AddSheet("test", html);

            workbookBuilder.AddSheet("sheet2", html);

            byte[] data = workbookBuilder.GetAsByteArray();

            File.WriteAllBytes(Path.Combine(Environment.CurrentDirectory, "buiilderTest.xlsx"), data);
        }
Пример #3
0
        public void WorkbookInsert2()
        {
            String path = AppDomain.CurrentDomain.BaseDirectory + "/D.xls";

            IEnumerable <PointsCoupon> pcs;

            using (FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read))
            {
                pcs = WorkbookBuilder.ExcelToDataTable <PointsCoupon>(fs, false);
            }

            foreach (var item in pcs)
            {
                Console.WriteLine(item.ParValue);
            }
        }
Пример #4
0
        public Task <OperationResult> CreateExcelDocument(List <Row> rows) =>
        Task.Factory.StartNew(() =>
        {
            OperationResult result = new OperationResult();
            WorkBook workbook      = new WorkbookBuilder().CreateWorkBook(rows);
            if (workbook == null)
            {
                result.Success = false;
                result.AddMessage(ResponseMessages.WorkBookError);
                return(result);
            }
            // TODO safe name of file
            workbook.SaveAs("example_workbook.xlsx");

            return(result);
        });
Пример #5
0
        public void TestOK()
        {
            var saver = new WorkbookSaver();



            var builder = new WorkbookBuilder(new ModelConverterFactory(null));
            builder.EnsureWorksheet<IBlockPlan>("Sheet1").Add(new BlockPlan { Name = "xxx" });
            builder.EnsureWorksheet<IBlockPlan>("Sheet1").Add(new BlockPlan { Name = "yyy" });

            var workbook = builder.ToWorkbook("workbook");

            var ms = new FileStream(@"C:\Github\test.xlsx", FileMode.Create);
            saver.SaveWorkbook(workbook, ms);
            ms.Close();

            Assert.IsNotNull(ms);
        }
Пример #6
0
        public Task <OperationResult> CompareExcelDocument(IFormFile file) =>
        Task.Factory.StartNew(() =>
        {
            OperationResult result = _validator.ValidateExcelDocument(file);

            if (result.Success)
            {
                WorkBook workBook   = WorkBookHelper.ConvertFileToWorkbook(file);
                WorkSheet worksheet = workBook.DefaultWorkSheet;

                List <Row> rowsFromDb = (List <Row>)_repository.GetAll();
                WorkSheet dbWorksheet = new WorkbookBuilder().CreateWorkBook(rowsFromDb).DefaultWorkSheet;

                List <Cell> changedCells = (List <Cell>)FindChangedCells(worksheet, dbWorksheet);
                SetRedColor(changedCells);

                workBook.SaveAs(file.FileName);
            }

            return(result);
        });
        public void ShouldReturnAssemblyWhenCompiled()
        {
            var sheetBuilder        = new SheetBuilder();
            var workbookBuilder     = new WorkbookBuilder(sheetBuilder);
            var assemblyCodeBuilder = new AssemblyCodeBuilder(workbookBuilder);

            const string assemblyName  = "UnitTest";
            var          assemblyCode  = assemblyCodeBuilder.Build(assemblyName, workbook);
            var          assemblyBytes = CSharpCodeCompiler.GetAssemblyBytes(assemblyName, assemblyCode).ToArray();

            Assert.NotEmpty(assemblyBytes);

            var assembly         = Assembly.Load(assemblyBytes);
            var compiledWorkbook = assembly.CreateInstance($"{assemblyName}.Workbook") as IWorkbook;

            Assert.NotNull(compiledWorkbook);

            var sheet = compiledWorkbook.GetSheet(SheetName);

            sheet.Evaluate();
            var value = sheet.GetNumeric("A1");

            Assert.Equal(84, value);
        }