public static HSSFWorkbook CycleProprietari(CadSysContext context, string[] columnNames, string ruleSet) { var wbk = new HSSFWorkbook(); var sheet = wbk.CreateSheet("Sheet 1"); var validatorP = new ProprietarValidator(context); var validatorA = new AdresaValidator(); var header = sheet.CreateRow(0); for (var i = 0; i < columnNames.Length; i++) { var cell = header.CreateCell(i); cell.SetCellValue(columnNames[i]); } foreach (var x in context.Proprietari.Include(x => x.Adresa).ThenInclude(y => y.Localitate).ThenInclude(z => z.UAT).ThenInclude(w => w.Judet)) { ExportProprietar(sheet, columnNames, x, validatorP, validatorA, ruleSet); } return(wbk); }
private static void ExportProprietar(ISheet sheet, string[] columnNames, Proprietar proprietar, ProprietarValidator validatorP, AdresaValidator validatorA, string ruleSet) { var resultP = validatorP.Validate(proprietar, ruleSet: ruleSet); var resultA = validatorA.Validate(proprietar.Adresa, ruleSet: ruleSet); var excelDTO = new OutputProprietarAdresa(); excelDTO.FromPOCO(proprietar); excelDTO.FromPOCO(proprietar.Adresa); var row = sheet.CreateRow(excelDTO.RowIndex); writeRow(row, columnNames, excelDTO, false, resultP, resultA); }