Вы можете попробовать с ClosedXML библиотеки (легко манипулировать вашу рабочую книгу) сохранить его в поток памяти. Затем, короткая история, отправьте поток через http, как обычно.
public byte[] GetExcelByteStream(string filename)
{
using (var workbook = new XLWorkbook(filename))
{
var worksheet = workbook.Worksheets.Add("Sample Sheet");
worksheet.Cell("A1").Value = "Hello World!";
using (var ms = new MemoryStream())
{
workbook.SaveAs(ms);
return ms.ToArray();
}
}
}
Для веба-ответа классического способ:
var excelStream = GetExcelByteStream("MyExcelFilename");
context.Response.Clear();
context.Response.AddHeader("Content-Disposition", "attachment;filename="+context.Request.Form["txtFileName"].ToString());
context.Response.AddHeader("Content-Length", excelStream.Length.ToString());
context.Response.ContentType = "application/octet-stream";
context.Response.BinaryWrite(excelStream);
Надеется, что это помогает.
вы можете использовать iis и передавать таблицы ur db в файл excel, используя команду процесса , чтобы объявить ur db-файл в iis. –
Можете ли вы дать мне еще несколько объяснений этому? Я новичок в C# .. :) – vishnu