我正在使用 WebApiContrib.Formatting.xlsx 创建和下载 Microsoft Excel 文件。我的问题是,当从客户端调用时,文件无法打开,并且尝试了几种方法。在处理 PDF 时,问题已解决,将输出转换为 Byte64,如下所示:
var response = new HttpResponseMessage
{
Content = new StringContent(Convert.ToBase64String(output.ToArray()))
};
response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment")
{
FileName = "Report.pdf"
};
return response;
在 WebApiContrib.Formatting.xlsx 的情况下,我有一个 IEnumerable。如何将其转换为与 PDF 相同的方式。
var subscriptionExcelModels = subscriptionPlansConverted as SubscriptionExcelModel[] ?? subscriptionPlansConverted.ToArray();
这是我对 excel 文件最后一部分代码的片段:
var ret = Request.CreateResponse(HttpStatusCode.OK,subscriptionExcelModels);
ret.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
ret.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment")
{
FileName = "Report.xlsx"
};
return ret;