Ps: O EXPDP é mais rápido. Caso você não defina o diretório, ele pega o diretório padrão da tabela dba_directories
// Baixe a dll através do nuget Install-Package ClosedXML -Version 0.94.2
// É necessário importar o arquivo CLosedXML using ClosedXML.Excel;
// Método que retorna uma memorystream de um arquivo Excel
protected MemoryStream GerarExcel()
{
try
{
workbook = new XLWorkbook();
ws = workbook.Worksheets.Add("Plan1")
ws.Cell($"A1").Value = "Titulo centralizado e mesclado";
ws.Range($"A1:H2").Merge();
ws.Cell($"A1").Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center;
ws.Cell($"A1").Style.Alignment.Vertical = XLAlignmentVerticalValues.Center;
ws.Range($"A1:H2").Style.Fill.BackgroundColor = XLColor.LightGray;
ws.Range($"A1:H2").Style.Font.FontSize = 16;
ws.Range($"A1:H2").Style.Font.Bold = true ;
/*Adicionar borda*/
ws.Range($"A1:H2").Style.Border.TopBorder = XLBorderStyleValues.Thin;
ws.Range($"A1:H2").Style.Border.BottomBorder = XLBorderStyleValues.Thin;
ws.Range($"A1:H2").Style.Border.LeftBorder = XLBorderStyleValues.Thin;
ws.Range($A1:H2").Style.Border.RightBorder = XLBorderStyleValues.Thin;
ws.Columns().AdjustToContents();
MemoryStream obj_stream = new MemoryStream();
var tempFile = System.IO.Path.Combine(System.IO.Path.GetTempPath(), Guid.NewGuid() + ".xlsx");
workbook.SaveAs(tempFile);
obj_stream = new MemoryStream(File.ReadAllBytes(tempFile));
File.Delete(tempFile);
obj_stream.Position = 0;
return obj_stream;
}
catch (Exception Ex)
{
//Criar tratamento para exception
return null ;
}
}
(Oracle) < add name="nomebd" connectionString="DATA SOURCE=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.1.100)(PORT=1521))(CONNECT_DATA=(SID=nomebd)));USER ID=usuario;PASSWORD=senha" />