こんにちは、私はExcelへのエクスポートにclosedxML DLLを使用しています。以下のような静的メソッドがあります
public static void WriteToExcel(string fileName, List<CP> pages)
{
var wb = new XLWorkbook();
byte[] file;
var ws = wb.Worksheets.Add("CPs");
WriteCostHeader(ws);
////write all the header columns
//for (int i = 0; i < pages.Count; i++)
int iRow = 2;
foreach(var page in pages)
{
WriteCostPage(ws, page, iRow++);
WriteCostItemHead(ws, iRow++);
foreach(var item in page.Items)
{
WriteCostItem(ws, item, iRow++);
}
iRow++;
}
wb.SaveAs(fileName);
}
以下のようなメソッドで上記の関数を呼び出しています
public static List<CP> Init()
{
//binding items to to list
}
static void Main(string[] args)
{
byte[] file;
file = ExcelProvider.WriteToExcel("D:\\Temp\\Test1.xls", Init());
//Console.WriteLine("done");
//Console.ReadLine();
}
public byte[] CreatePackage()
{
string fileName = string.Format("{0}.xlsx", "Generated");
byte[] excelFile;
// getting error here cannot convert void to byte[]
excelFile = ExcelProvider.WriteToExcel(fileName, Init());
}
しかし、その結果のExcelシートをバイト単位で取得する必要があります.後でメモリストリームに保存する必要があります..
しかし、作成したExcelファイルをバイト形式で取得する方法がわかりません...
これに関するアイデアや解決策を教えてください...よろしくお願いします...